Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: VBA Formel erzeugen aktive Spalte

VBA Formel erzeugen aktive Spalte
13.11.2022 19:21:15
Udo.D
Hallo Forum,
sollte bitte eure Hilfe in Anspruch nehmen ,
Ich möchte zB in Zelle U29 eine Vergleichsformel eintragen lassen und zwar je nachdem in welcher Spalte ich mich befinde.
Die Formel sieht dann wie folgt aus =VERGLEICH($V$17;AO$34:AO$5000;1) wenn ich das Makro zB in Spa AO ausführe.
in VBA zeichnet der recorder zunächst zB einen Code wie ActiveCell.FormulaR1C1 = "=MATCH( R[-5]C[-2],R[5]C[10]:R[4971]C[10],1)",
natürlich in Abhängigkeit wo ich die Formel eingebe zählt er ja die Schritte neben R & C entsprechend.
Was ich möchte wäre sowas wie ActiveCell.FormulaR1C1 = "=MATCH( " & [V17].address & ","& Row(34) & activecell.column & ":" & Row(5000) & activecell.column &",1)"
Sprich wenn ich das zB. in Spalte AB ausführe unterhalb Zeile 34 ... dann schreib er in U29 eben =VERGLEICH($V$17;AB$34:AB$5000;1) usw.
Habt ihr ne Idee oder nen Ansatz wie ich die zu erzeugende Formel im Code angeben muss ?
bin für jede Hilfe dankbar
LG Udo
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Formel erzeugen aktive Spalte
13.11.2022 19:38:59
Daniel
Hi
ich mach das mit einem Zwischenschritt, weils übersichtlicher ist:

FO = "=Match(R17C22,R34Cxxx:R5000Cxxx,1)
FO = Replace(FO, "xxx", ActiveCell.Column)
Range("U29").FormulaR1C1 = FO
geht natürlich auch direkt ohne die Variable FO, finde ich aber nicht so gut, vorallem wenn die Formeln länger werden:

Range("U29").FormulaR1C1 = "=Match(R17C22,R34C" & ActiveCell.Column & ":R5000C" & ActiveCell.Column & ",1)
Gruß Daniel
Anzeige
Vielen herzl. Dank Daniel ...
13.11.2022 19:48:25
Udo.D
Grüß dich Daniel,
Mensch prima, tausend Dank !!
Wirklich, lieben Dank !
Ich hatte schon alles möglich probiert, aber einfach die Rechteckklammer wegzulassen bin ich nicht draufgekommen
Danke fürs Update ;-)
auch das replace Argument - auch super - prima
Ganz lieben Dank & Grüße
Udo
Anzeige
AW: Vielen herzl. Dank Daniel ...
13.11.2022 19:59:00
Daniel
naja, dass du nicht selber darauf gekommen bist, die [] weg zu lassen um relative Zellbezüge darzustellen, ist verwunderlich, denn schließlich schreibst du selber
"Die Formel sieht dann wie folgt aus =VERGLEICH($V$17;AO$34:AO$5000;1) wenn ich das Makro zB in Spa AO ausführe."
und wenn du das mit dem Recorer aufgezeichnest, dann hättest du auch die Schreibweise ohne Klammern für absolute Zellbzüge sehen müssen.
Gruß Daniel
Anzeige
AW: Vielen herzl. Dank Daniel ...
13.11.2022 20:57:25
Udo.D
Du hast recht, aber du siehst das vermutlich mit einer umfangreicheren Erfahrung
bezogen auf die Schreibweise hierzu, ich lern da einfach immernoch dazu.
Danke dir jedenfalls sehr
Jetzt is mir das auch klar ;-)
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige