Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1816to1820
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Formeln per Makro einfügen

Formeln per Makro einfügen
09.03.2021 13:28:47
Arend
Hallo,
ich möchte Formeln per Makro einfügen. Habe über Google und auch in diesem Forum die Suche bemüht, komme aber als VBA-Anfänger nicht weiter.
Ich möchte 7 Formeln von F-L 1 in die Zellen einfügen. Danach könnte ich sie nach unten ziehen bis zur letzten Zeile. Besser wäre es natürlich wenn das nach unten ziehen auch per Makro ging - bis zur letzten gefüllten Zelle in Spalte A.
Die Art der Formeln dürfte ja egal sein da es eine Grundsatzfrage ist, wie man dieses per Makro möglich machen könnte. Habe aber ein Excel-Beispiel beigefügt. Diese Seite wird automatisch gelöscht und ist leer.
Die Spalten A-E werden durch ein Makro gefüllt. Danach soll es per Makro die Formeln von F-L einfügen und wenn es geht bis zur letzten gefüllten Zelle (Spalte A) gezogen werden. Spalte J wird nicht funktionieren da ein Tabellenblatt fehlt, was aber nicht schlimm ist.
Gruß Arend
https://www.herber.de/bbs/user/144595.xlsm

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Formeln per Makro einfügen
09.03.2021 14:05:55
Rudi
Hallo,
Sub Beispiel()
With Range(Cells(1, 1), Cells(Rows.Count, 1).End(xlUp))
.Offset(, 5).FormulaR1C1 = _
"=SUBSTITUTE(SUBSTITUTE(RC[-2],""EUR"",""""),""$$$"","""")*1"
.Offset(, 6).FormulaR1C1 = _
"=SUBSTITUTE(SUBSTITUTE(RC[-2],""EUR"",""""),""$$$"","""")*1"
.Offset(, 7).FormulaR1C1 = "=100/RC[-2]*RC[-1]-100"
'etc.
End With
End Sub

Gruß
Rudi

AW: Formeln per Makro einfügen
09.03.2021 14:41:55
Arend
Rudi, vielen Dank für Deine schnelle Hilfe.
Wäre es unverschämt Dich zu bitten mir die restlichen 4 Formeln auch noch zu übersezten. Denn Du kürzt die Formeln wie ich es noch in keinem Beispiel gesehen habe. Da fehlt mir leider die Kenntnis. Aber es ist auch der kürzeste Code den ich mit anderen Beispielen vergleichen kann.
Gruß Arend

Anzeige
AW: Formeln per Makro einfügen
09.03.2021 15:16:14
Rudi
Hallo,
der Recorder ist dein Freund.
Sub Beispiel()
With Range(Cells(1, 1), Cells(Rows.Count, 1).End(xlUp))
.Offset(, 5).FormulaR1C1 = _
"=SUBSTITUTE(SUBSTITUTE(RC[-2],""EUR"",""""),""$$$"","""")*1"
.Offset(, 6).FormulaR1C1 = _
"=SUBSTITUTE(SUBSTITUTE(RC[-2],""EUR"",""""),""$$$"","""")*1"
.Offset(, 7).FormulaR1C1 = "=100/RC[-2]*RC[-1]-100"
.Offset(, 8).FormulaR1C1 = "=IF(RC[-3]>2,""Richtig"",""0"")"
.Offset(, 9).FormulaR1C1 = "=MATCH(RC[-7],Priorität!C[-9],0)"
.Offset(, 10).FormulaR1C1 = _
"=IF(ISERROR(LEFT(RC[-9],SEARCH("" "",RC[-9],SEARCH("" "",RC[-9])+1)-1))," _
& "RC[-9],LEFT(RC[-9],SEARCH("" "",RC[-9],SEARCH("" "",RC[-9])+1)-1))"
.Offset(, 11).FormulaR1C1 = "=RC[-1]&"" - ""&RC[-9]"
End With
End Sub

Gruß
Rudi
P.S. Was soll die Formel in K?

Anzeige
AW: Formeln per Makro einfügen
09.03.2021 15:22:16
Arend
Vielen lieben Dank Rudi. Einfach Super.
Die Formel in K schneidet nach 2 Wörtern ab!
Gruß Arend

das geht kompakter mit ...
09.03.2021 15:27:31
Rudi
=WENNFEHLER(LINKS(B1;SUCHEN("|";WECHSELN(B1;" ";"|";2))-1);B1)

oder auch ...
09.03.2021 15:44:39
Rudi
=GLÄTTEN(LINKS(WECHSELN(B1;" ";WIEDERHOLEN(" ";99);2);99))

AW: oder auch ...
09.03.2021 17:46:57
Arend
Hallo Rudi,
nochmal vielen Dank für Deine Hilfe. Auch die 2 anderen schlankeren Codes funktionieren. Da Du geschrieben hast: Der Recorder ist Dein Freund, habe ich es jetzt mehrmals versucht und tatsächlich auch hinbekommen. Auch Deinen neuen Code konnte ich so jetzt hinzufügen in das Makro und es funktioniert.
Das war mir jetzt echt eine Hilfe.
Dankeschön.
Gruß Arend
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige