Clever-Excel-Forum

Normale Version: In ermittelte Adresse schreiben
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Hallo,

ich möchte in eine über =ADRESSE() ermittlete Zelle etwas schreiben lassen.  Sprich ich hab in einer Zelle die Position der Zelle enthalten, in die ich schreiben möchte.  Über =INDIREKT() kann ich den Inhalt der besagten Zelle auslesen, ich möchte jedoch in diese Zelle schreiben, nicht lesen.
Aktuell habe ich in einer Zelle $C$35 stehen und möchte über eine Funktion oder Befehl, dass der Inhalt dieser Zelle ($C$35) inkrementiert wird.

Gibt es dazu eine Funktion, also als Gegenspieler zu =Indirekt() oder wie könnte ich das umsetzen?

Ich habe selbst nichts gefunden, vermutlich weil ich nicht die richtigen Schlagworte verwendet habe, da ich in Excel ziemlich unerfahren bin.

Dankeschön im Voraus
Moin!
Eine Formel kann nichts in eine andere Zelle schreiben, sondern nur aus ihr lesen!
Aber wenn Du doch den Text $C$35 durch die Funktion =ADRESSE(35;3)  ermittelst, verstehe ich Dein Anliegen ohnehin nicht!


Mittels VBA wäre es ein einfaches Cells(35, 3) = "XXX"

Gruß Ralf
Hi John,


Zitat:Über =INDIREKT() kann ich den Inhalt der besagten Zelle auslesen, ich möchte jedoch in diese Zelle schreiben, nicht lesen.

habe ich dich richtig verstanden, dass du die ausgelesene Zelle aus einer anderen heraus befüllen willst? Falls ja: Nein!! Zumindest geht das nicht mit Formeln; ob per Makro (falls du das einsetzen kannst/willst/darfst) etwas möglich ist, müssen dir die VBA-Spezialisten sagen.
Da ich gerade in Erklärbär-Laune bin:
Das Zeichen 61 des ASCII-Zeichensatzes (landläufig als Gleichheitszeichen "=" bekannt), hat in Excel incl. VBA drei völlig verschiedene Bedeutungen.
A) Excel
  • Ein = als erstes Zeichen zeigt Excel, dass eine Formel folgt. Will man dieses Zeichen als Textbeginn darstellen, muss man dies durch ein vorangehendes Hochkomma ' kenntlich machen *)
  • Ein eventuelles zweites = behandelt einen Vergleich zweier Terme, der einen Wahrheitswert wiedergibt. 
    Hier gilt das Kommutativgesetz!  :21:
    =A5=5 ist das Gleiche wie =5=A5 und liefert WAHR, wenn in A5 eine 5 steht.
B) VBA
  • Eine (echte) Codezeile darf niemals mit einem = beginnen!
  • Das erste = ist hier kein Vergleich, sondern eine Zuweisung!
    Bei Range("A1") = Range("B1") erhält A1 den Wert von B1
    Das Kommutativgesetz gilt hier nicht!
    Denn Range("B1") = Range("A1") bedeutet, dass B1 den Wert von A1 erhält.
  • Folgt ein weiteres =, dann bleibt das erste die Zuweisung, das zweite ist wiederum ein Vergleich
    Range("A1") = Range("B1") = Range("C1") schreibt ein FALSCH in A1, wenn B1<>c1 ist.
Alle Klarheiten beseitigt?  :19:

*) Zusatz:
Statt des = akzeptiert Excel auch ein + als Beginn einer Formel!
Niemand würde zwar +heute() in eine Zelle schreiben, obwohl man sich die Umschalttaste sparen könnte, die zum Schreiben von = notwendig ist.
Allerdings gebrauche ich dies häufig, um mal schnell eine Berechnung in einer Zelle mittels Ziffernblock durchzuführen, ohne den Taschenrechner hervorzukramen:
+37,5/365,25+18 Enter ergibt völlig korrekt 18,102669
In der Bearbeitungsleiste steht dann übrigens =37,5/365,25+18

Gruß Ralf
+1 für den Erklärbar.
Meinst du das so?
Erstmal herzliches Dankeschön für die vielen Antworten!

Zitat:habe ich dich richtig verstanden, dass du die ausgelesene Zelle aus einer anderen heraus befüllen willst? Falls ja: Nein!! Zumindest geht das nicht mit Formeln; ob per Makro (falls du das einsetzen kannst/willst/darfst) etwas möglich ist, müssen dir die VBA-Spezialisten sagen.
Ok, dann weiß ich schonmal, dass ich das so nicht machen kann.

Zitat:Eine Formel kann nichts in eine andere Zelle schreiben, sondern nur aus ihr lesen!

Aber wenn Du doch den Text $C$35 durch die Funktion =ADRESSE(35;3)  ermittelst, verstehe ich Dein Anliegen ohnehin nicht!

Ich bekomme $C$35 durch =ADRESSE(G10;F10) und wollte durch Eingabe einer Funktion in eine beliebige Zelle in Zelle $C$35 schreiben. Aberr wenn eine Formel aus anderen Zellen nur lesen kann, hat sich das wohl erübrigt.

Hintergrund ist, ich lese ein Textfile ein, welches 2 Zahlen liefert, die die "Koordinaten" darstellen in welche Zellen ich etwas bestimmtes schreiben möchte. Über =ADRESSE() konnte ich aus den "Koordinaten" die entsprechende Zelle ermitteln.

Ich werde mich wohl oder übel in VBA einarbeiten müssen, um dieses Problem lösen zu können.

Viele Grüße und Danke
John

PS: noch mal Credits an den Erzählbären für die ausführliche Antwort
Hi John,

noch eine Möglichkeit:

Du zeigst uns anhand einer Beispielttabelle, was du wo erreichen willst. Vllt. gibt es ja ganz andere Lösungswege. Keine ScrShots sondern .xlsx
Hast du mein Beispiel versucht? Das funktioniert doch!??
@Frogger: Ich habe deinen Vorschlag angeschaut. Die gelieferte Adresse gibt die Position der gesuchten Zahl wieder. Die Adresse, dich ich suche wird jedoch aus 2 Zahlen zusammengesetzt, die in verschiedenen Zellen stehen.

Mal bisschen was zu der Aufgabe...
Mit einem Makrorekorder nehme ich Mausbewegugen und Klicks auf. Dieser Recorder speichert jeden Klick mit dazugehörigen Klicks in einem File. Aus den Klicks soll ich eine "Heatmap" erstellen. Dazu habe ich die Koordinaten extrahiert und mir in eine Excel Postion umrechen lassen. Nächster Schritt wäre, jedes mal wenn ich eine Adresse ermittelt habe, deren Wert zu Inkrementieren. Am Ende werden die Werte der Matrix (die die Klicks wiederspiegelt) farbkodiert. Sprich für jedes vorkommen derselben Adresse, soll der Wert dieser Adresse inkrementiert werden.

Tabelle 1 zeigt in klein, was am Ende herauskommen sollte.

Während ich die Aufgabe zusammengefasst habe, ist mir erst aufgefallen, dasses zig andere Möglichkeiten geben muss, diese umzusetzen :)

Eine Formel, die zählt, wie oft ein bestimmter Inhalt in einer Spalte vorkommt, würde vermutlich reichen. Dass ich in allen Elemente der Matrix, die ich mit Werten fülle, abfrage, wie oft deren Adresse in Spalte H vorkommt. Vielleich weiß ja einer, mit welcher Formel ich das ganze erschlagen kann.

Ich habe viel zu kompliziert gedacht :/

Ich muss mich erst noch an die Denkweise von Excel einarbeiten.
PS: an der Extrahierung der Koordinaten werdet ihr sehen, was ein blutiger Anfänger ich in Excel bin.
Seiten: 1 2