Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

In ermittelte Adresse schreiben
#1
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
Antworten Top
#2
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
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
[-] Folgende(r) 1 Nutzer sagt Danke an RPP63 für diesen Beitrag:
  • JohnDee
Antworten Top
#3
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.
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
[-] Folgende(r) 1 Nutzer sagt Danke an WillWissen für diesen Beitrag:
  • JohnDee
Antworten Top
#4
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
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
[-] Folgende(r) 1 Nutzer sagt Danke an RPP63 für diesen Beitrag:
  • JohnDee
Antworten Top
#5
+1 für den Erklärbar.
Wir sehen uns!
... Detlef

Meine Beiträge können Ironie oder Sarkasmus enthalten.

Antworten Top
#6
Meinst du das so?
Antworten Top
#7
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
Antworten Top
#8
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
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Antworten Top
#9
Hast du mein Beispiel versucht? Das funktioniert doch!??
Antworten Top
#10
@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.


Angehängte Dateien
.xlsx   Forumsbeitrag.xlsx (Größe: 13,23 KB / Downloads: 4)
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste