habe ein Problem mit einem vorhandenen Code und komme nicht drauf, wie ich ihn an meine Bedürfnisse anpassen kann.
hier der Code:
Sub Aufteilen()
Dim lngLetzte As Long
Dim lngEinfüg As Long
Dim i As Long
Dim dblMaxKapa As Double
Dim lngAnzZeilen As Long
Dim fVarProd As Variant
Dim lngStück As Long
Dim lngFormen As Long
Dim lngCalcStatus As Long
Dim dblAufgeteilt As Double
On Error GoTo ErrExit
lngCalcStatus = Application.Calculation
Application.Calculation = xlCalculationManual
With Worksheets("F7 Artikelebene")
dblMaxKapa = .Cells(2, "Y").Value
lngLetzte = .Cells(.Rows.Count, "W").End(xlUp).Row
For i = 4 To lngLetzte
If .Cells(i, "W").Value "" Then
fVarProd = .Cells(i, "W").Resize(, 2).Value
lngStück = .Cells(i, "Y").Value
lngFormen = .Cells(i, "AA").Value
lngAnzZeilen = Application.Min(lngFormen, Application.RoundUp(lngStück / dblMaxKapa, 0) _
)
With Worksheets("F7 Soll ausgelastet")
lngEinfüg = Application.Max(8, .Cells(.Rows.Count, 1).End(xlUp).Row + 1)
With .Cells(lngEinfüg, 1)
.Resize(lngAnzZeilen, 2).Value = fVarProd
.Offset(, 2).Resize(lngAnzZeilen).Value = Application.Min(dblMaxKapa, lngStück / _
lngAnzZeilen)
dblAufgeteilt = (lngAnzZeilen - 1) * Application.Min(dblMaxKapa, lngStück / _
lngAnzZeilen)
.Offset(lngAnzZeilen - 1, 2).Value = lngStück - dblAufgeteilt
End With
End With
End If
Next i
End With
ErrExit:
Application.Calculation = lngCalcStatus
End Sub
in der Datei, siehe unten, ist beschrieben, welche Lösung ich anstrebe.
an sich möchte ich, dass wenn die Anzahl an Formen größer als 1 und durch die vorgegebene Stückzahl pro Artikelnummer, zuerst 44,1 (maximale Formkapazität) angezeigt wird, dann der Rest der Stückzahl. und nicht wie bisher gleichverteilt...in der Beispieldatei wird es deutlicher...
Bitte um Eure freundliche Unterstützung
Gruss
Jan
https://www.herber.de/bbs/user/135129.xlsx