Spaltenbezeichnung in VBA-Formeln <-> Excel-Formel
23.02.2007 16:01:26
Bjoern
ich habe folgendes Problem bei Aufzeichnen eines Makros und der Verfeinerung der Ergebnisse
Ich habe in einer Zelle folgende Formel eingegeben:
=WENN(TYP(KORREL('Daten1'!C4:C46;'Daten2'!E4:E46))=16;0;KORREL('Daten1'!C4:C46;'Daten2'!E4:E46))
Wenn ich die Formel mit dem Makrorekorder aufnehme, bekomme ich folgendes Ergebnis:
ActiveCell.FormulaR1C1 = _
"=IF(TYPE(CORREL('Daten1'!R[-3]C[1]:R[39]C[1],'Daten2'!R[-3]C[3]:R[39]C[3]))=16,0,CORREL('Daten1'!R[-3]C[1]:R[39]C[1],'Daten2'!R[-3]C[3]:R[39]C[3]))"
Von der zuvor genannten Formel habe ich insgesamt 87 Varianten ...
Mittels des Makros möchte ich den Bereich / Spalte von "Daten1" frei wählen / bestimmen können, in dem ich einfach die Spalte abfrage, die ich dann auswerten will.
D4:D46
E4:E46
...
IU4:I46
IV4:I46
Leider habe ich keinen Schimmer, wie ich das dann für diese Formel hinbekomme, die mir der Rekorder aufgenommen hat.
Wollte einfach den Bezeichnung der Spalte als Variable abfragen und dann entsprechend in die Formel einfügen. Nur steht in der aufgezeichneten Formel nicht die Spalte als Buchstabe.
Gibt es eine Möglichkeit die Formel entsprechend so zu erstellen, dass ich die Spaltenbezeichnung (A, B, C, D, ... IU, IV) sehe / ändern kann oder welche Lösung gibt es sonst.
Freue mich, wenn mir jemand entsprechend helfen kann. DANKE
Björn
PS: Die Variante Suchen/Ersetzen ohne Makroeinsatz funzt nicht, da man beim Ersetzen des "E"s auch z. B. das "Wenn" zerstört ... :-(