Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1428to1432
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
Formel mit variablem Inhalt in Zelle per VBA
12.06.2015 13:17:40
Felix
Moin zusammen,
ich stehe vor dem Problem, dass ich eine Zelle eine Formel schreiben möchte.
Diese Formel soll bewirken, dass die beiden vorherigen Spalten multipliziert werden. Wichtig ist mir aber, dass eine Formel in die Zelle geschrieben wird.
Mein bisheriger Ansatz sieht wie folt aus:
Sub Commandbutton_Click()
Dim Zeile As Integer
Dim Spalte As Integer
Cells(144, 3).End(xlUp).Select
Zeile = Selection.Row
Spalte = Selection.Column
Cells(Zeile + 2, Spalte + 5).Formula = " = Produkt(" & Cells(Zeile + 2, Spalte + 4) & " ; " &  _
Cells(Zeile + 2, Spalte + 3) & ")"
End Sub
Das Problem ist hierbei, dass ein Leerzeichen hinter dem ersten " stehen muss, aber dadurch erkennt Excel das Ganze, wenn es in der Zelle steht, nicht mehr als Formel. Ohne das Leerzeichen taucht ein Fehler auf.
Kann mir hier jemand weiterhelfen?
Liebe Grüße
PS: ich habe schon etliche Varianten der Formel ausprobiert

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Formel mit variablem Inhalt in Zelle per VBA
12.06.2015 13:25:29
Rudi
hallo,
VBA spricht englisch!
Cells(Zeile + 2, Spalte + 5).Formula = _
"=Product(" & Cells(Zeile + 2, Spalte + 4) _
& "," & Cells(Zeile + 2, Spalte + 3) & ")"
Gruß
Rudi

AW: Formel mit variablem Inhalt in Zelle per VBA
12.06.2015 13:39:23
Felix
Vielen Dank für den Hinweis, aber das habe ich auch ausprobiert. Ändert leider nichts am Problem.
Liebe Grüße

bei mir geht das. owT
12.06.2015 13:45:03
Rudi

AW: bei mir geht das. owT
12.06.2015 14:51:58
Felix
Naja das Problem ist auch irgendwie, dass er die Werte, die in der Zelle stehen, in die Formel einsetzt und nicht den Verweis zur Zelle. Gibt es hierfür eine Lösung?

ja.
12.06.2015 19:03:18
Michael
Hi zusammen,
kopier das mal in Deinen Code zum Testen, und es wird Dir ein Licht aufgehen:
MsgBox Cells(Zeile + 2, Spalte + 5).Address _
(RowAbsolute:=False, ColumnAbsolute:=False)
MsgBox Cells(Zeile + 2, Spalte + 5).Offset(0, -1).Address _
(RowAbsolute:=False, ColumnAbsolute:=False)
MsgBox Cells(Zeile + 2, Spalte + 5).Offset(0, -2).Address _
(RowAbsolute:=False, ColumnAbsolute:=False)
param1 = Cells(Zeile + 2, Spalte + 5).Offset(0, -1).Address _
(RowAbsolute:=False, ColumnAbsolute:=False)
param2 = Cells(Zeile + 2, Spalte + 5).Offset(0, -2).Address _
(RowAbsolute:=False, ColumnAbsolute:=False)
Cells(Zeile + 2, Spalte + 5).Formula = "=Product(" & _
param1 & "," & param2 & ")"
Die Klammern nach dem Address sorgen dafür, daß *keine* $-Zeichen (für absolute Verweise) ausgegeben werden.
Happy Exceling,
Michael

Anzeige
ja, Nachtrag
12.06.2015 19:08:58
Michael

'oder so:
Cells(Zeile + 2, Spalte + 5).Formula = "=" & param1 & "*" & param2

AW: ja, Nachtrag
15.06.2015 08:55:37
Felix
Super, vielen Dank! Ich habe es jetzt hinbekommen!

freut mich, danke für die Rückmeldung owT
15.06.2015 19:23:33
Michael

383 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige