Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender Navigationstipps
Inhaltsverzeichnis

Worksheet-Funktion per VBA einfügen

Worksheet-Funktion per VBA einfügen
06.10.2004 09:22:35
Karsten
Guten Morgen zusammen,
ich möchte per VBA eine Funktion in mein Tabellenblatt eintragen. Das Problem besteht darin, daß die Zelladressen in VBA nur als Variablen vorliegen. Kennt jemand einen Syntax mit dem ich die Variablen in nachstehendes Codemuster integrieren kann? Die Variablen sind "Zeile" und "coSchichtNrS"
.Cells(Zeile, coSchichtNrS + 5).FormulaLocal = "=ACHSENABSCHNITT(E18:E19;D18:D19)"
Herzlichen Dank schonmal
Karsten

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Worksheet-Funktion per VBA einfügen
06.10.2004 09:40:02
grumble
hi,
richtig verstanden hab ich so auf die schnelle nicht was du machen willst aber versuch mal das hier umzsetzen, vielleicht hilft dir das
cells(x,y).value = worksheetfunction.sum(range(cells(x,z),cells(x,a)).value)
AW: Worksheet-Funktion per VBA einfügen
Karsten
Hi grumble,
danke für Deinen Gedanken. Leider funktioniertz das so nicht, da ich nicht den errechneten Wert in der Zelle stehen haben muß sondern die ganze Formel bzw. Funktion. Hintergrund ist der, daß ich zunächst eine ganze Zeile mit Formel füllen muß, die später dann dynamisch kopiert werden soll.
Karsten
AW: Worksheet-Funktion per VBA einfügen
06.10.2004 09:54:55
grumble
hm also willst du den formelstring variabel gestalten?
evtl. waere es ne loesung wenn du das so machst
s="=formel("& var1 & ":" & var2 & ")"
inwieweit man aber den spaltenbezug als buchstaben hinbekommt hab ich noch nicht probiert. aber da koennte man ja ne function fuer machen (falls es da nich was integriertes gibt, ich mach noch nich lange mitm vba) , irgendwie ueber ascii codes.
Anzeige
AW: MsgBox Cells(z,s).Address(0,0) - o.T.
06.10.2004 09:57:19
Matthias
-
AW: MsgBox Cells(z,s).Address(0,0) - o.T.
06.10.2004 10:02:45
grumble
hey cool , das kannte ich noch nicht... danke dir matthias :)
AW: Worksheet-Funktion per VBA einfügen
06.10.2004 09:46:41
Matthias
Hallo Karsten,
wie grumble weiß ich auch nicht genau, was Du meinst, aber ich vermute mal, dass du dir Bezüge E18, E19, D18, D19 nicht fest vorliegen hast, sondern nur die ... naja, vielleicht die 18 in einer Variable?
Auf alle Fälle gibt es die Address-Eigenschaft:
Debug.Print Cells(5,18).Address(0,0)
Vielleicht kannst du damit was anfangen.
Gruß Matthias
AW: Worksheet-Funktion per VBA einfügen
Karsten
Hallo Matthias,
sorry wenn ich es wohl nicht verständlich ausgedrückt habe. Aber ihr habt beide richtig verstanden was ich meinte. Die Bezüge E18:E19 und D18:D19 sind variabel und z.B. für E18 folgendermaßen vorliegend:
Cells(Zeile, coSchichtNrS + 2)
Ich möchte nun per VBA die EXCEL-Funktion "=ACHSENABSCHNITT(E18:E19;D18:D19)" z.B. in die Zelle F35 eintragen und zwar derart daß auch wirklich eine Formel mit einem = darin steht.
Karsten
Anzeige
AW: Worksheet-Funktion per VBA einfügen
06.10.2004 10:03:58
Matthias
Hallo Karsten,
mein Beispiel:

Sub test()
Dim zeile, coSchichtNrS
zeile = 18
coSchichtNrS = 3
Dim z As Range
Set z = Cells(zeile, coSchichtNrS + 2)
ActiveCell.FormulaLocal = "=ACHSENABSCHNITT(" & z.Address(0, 0) & ":" & z.Offset(1, 0).Address(0, 0) _
& ";" & z.Offset(0, -1).Address(0, 0) & ":" & z.Offset(1, -1).Address(0, 0) & ")"
End Sub

Gruß Matthias
AW: Worksheet-Funktion per VBA einfügen
Karsten
Danke Matthias,
so funktioniert es klasse.
Karsten

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige