Hallo zusammen,
ich möchte Formeln per VBA erstellen und habe derzeit folgenden Code:
Sub Berechnung_Balldifferenz()
Dim n1 As Integer, n2 As Integer
Dim Ziel As Integer, Distanz As Integer
' berechnet die Balldifferenz im Allgemeinen
Range("Ziel.Anfangspunkt").Value = "Bälle Differenz Allgemein"
Distanz = Range("Quelle.Ausgangspunkt").Column - Range("Ziel.Anfangspunkt").Column ' Distanz = -51
For n1 = 1 To Range("Anzahl.Feld").Value / 2
For n2 = 0 To ((Range("Anzahl.Gewinnsätze").Value * 2 - 1) * 2) * (Range("Anzahl.Begegnungen").Value) - 1
If WorksheetFunction.IsEven(n2) = True Then
Ziel = Distanz - 1 ' Ziel = -50
' diese Zeile habe ich mit freundlicher Unterstützung von Pappawinni erhalten
Range("Ziel.Anfangspunkt").Offset(n1, n2).FormulaR1C1 = "=RC[" & Distanz & "]-RC[" & Ziel & "]"
' diese Zeile habe ich vom Makrorecorder
Range("Ziel.Anfangspunkt").Offset(n1, n2).FormulaR1C1 = "=RC[-51]-RC[-50]"
Else
Ziel = Distanz + 1 ' Ziel = -52
Range("Ziel.Anfangspunkt").Offset(n1, n2).FormulaR1C1 = "=RC[" & Distanz & "]-RC[" & Ziel & "]"
Range("Ziel.Anfangspunkt").Offset(n1, n2).FormulaR1C1 = "=RC[-51]-RC[-52]"
End If
Next n2
Next n1
End Sub
Die Zeile von Pappawinni spricht aber andere Spalten an, als die Zeile vom Makrorecorder, obwohl die Variablen Distanz und Ziel die gewünschten Werte enthalten.
Was ist an der Konstruktion falsch?
Gruß
Siegfried