ich habe ein Problem mit Excel VBA. Ich programmiere zur Zeit einen Code, bei dem in einer Spalte die Kalenderwochen eines bestimmten Zeitraums abgefragt wird.
Solange eine KW vorhanden ist (Not IsEmpty), soll Excel in eine benachbarte Zelle eine Funktion schreiben.
Dim StdSchnitt As Currency
Dim tmp As Currency
Dim GBudget As Currency
Dim Stdsatz As Currency
Dim Zeile As Integer
GBudget = InputBox("Geben Sie bitte das GBudget an:", "GBudget")
Stdsatz = InputBox("Geben Sie bitte den Stdsatz an:", "Stdsatz")
Zeile = 8
Do While Not IsEmpty(Cells(Zeile - 1, 2))
tmp = WorksheetFunction.CountA(Range(Cells(7, 2), Cells(Zeile - 1, 2)))
Zeile = Zeile + 1
Loop
StdSchnitt = GBudget / Stdsatz / tmp
Zeile = 8
Do While Not IsEmpty(Cells(Zeile - 1, 2))
With Cells(Zeile - 1, 4)
.FormulaR1C1 = "=(" & StdSchnitt & "*R5C10)"
End With
Zeile = Zeile + 1
Loop
Zur Erklärung:
Die erste Do While - Schleife brauche ich weil ich den letzten Wert von tmp in der darauffolgenden Berechnung brauche.
Mein Problem ist folgendes: Verwende ich für StdSchnitt Integer anstatt Currency/Single/Double, funktioniert die Berechnung. Da ich aber 4 Nachkommastellen brauche wäre Currency eigentlich ideal dafür.
Bei Cells().FormulaR1C1 ergibt sich aber ein Lauftzeitfehler 1004 - der mir nix sagt.
Kann mir da jem. helfen?
Danke schon mal im Voraus!
Grüße
Patrick