ich Suche eine Formel mit der ich folgenden Code modifizieren kann:
Sub Uebergabe()
Dim i As Integer
Dim k As Integer
Dim iRowT As Integer
Const zz = 1
flagg = False
Sheets("Vorlage_Angebot_Sicht").Activate
Sheets("Vorlage_Angebot_Sicht").Range("D2").Select
i = 0
iRowT = 10
Do Until IsEmpty(ActiveCell)
For i = 0 To zz
ActiveCell.Select
If IsNumeric(Selection.Value) Then
If Selection.Value > 0 Then
Sheets("Eingabe").Cells(iRowT, 2) = ActiveCell.Offset(0, -3).Text
Sheets("Eingabe").Cells(iRowT, 3) = ActiveCell.Offset(0, -2).Text
Sheets("Eingabe").Cells(iRowT, 4) = ActiveCell.Offset(0, -1).Text
iRowT = iRowT + 1
ActiveCell.Offset(1).Select
Else
ActiveCell.Offset(1).Select
End If
Else
ActiveCell.Offset(1).Select
End If
Next i
Loop
End Sub
In der Spalte "D" steht eine Zahl, die zwischen 0 und 100 differieren kann. Nun ist mein Problem, dass nicht nur, wie oben im Code schon geschrieben steht, einfach nur alle Zeilen, wo der der Wert in Spalte "D" > 0 ist, in ein das andere Tabellenblatt "Eingabe" nacheinander kopiert werden sollen. Es soll darüber hinaus auch die Größe der Zahl in Spalte "D" berücksichtigt werden.
Das heißt, wenn in dort eine "1" steht, soll die entsprechende Zeile nur einmal in das Tabellenblatt "Eingabe" kopiert werden. Steht dort aber eine "2" oder "5" soll diese eine Zeile jeweils zwei- bzw. fünfmal in das Tabellenblatt "Eingabe" kopiert werden, bevor die nächste Zeile im Herkunftstabellenblatt nach einem Wert > 0 durchsucht und die entsprechende Zeile wieder nach "Eingabe" kopiert wird.
Wer kann mir hierbei helfen?
Vielen Dank schon einmal im Voraus!