Möglicherweise kann dies mit einer Formel durchgeführt werden, die die Größen SUM, OFFSET und INDEX verwendet.
Ich kümmere mich jedoch nicht um komplexe Formeln und greife stattdessen auf ALT+ zurück F11.
Sub DateOfShortage() StartLine = 2 EndLine = 6 StartColumn = 3 EndColumn = 7 For Line = StartLine To EndLine Stock = Cells(Line, 2) For Column = StartColumn To EndColumn Stock = Stock - Cells(Line, Column).Value If Stock <= 0 Then Cells(Line, EndColumn + 1).Value = Cells(1, Column).Value Exit For End If Next Column Next Line End Sub
Beispieldaten und Ergebnisse:
Wenn Sie für jedes Element eine Berechnungszeile hinzufügen, wie in einem Ihrer Screenshots gezeigt, können Sie das gewünschte Datum leicht mit einer Array-Formel erhalten (sieht für meinen Geschmack immer noch zu komplex aus):