Damit auch später noch ersichtlich ist, wie sich der
Gesamt-Wareneingang zusammensetzt, wird nicht einfach
die WE-Menge zum bereits vorhandenen WE dazu addiert
und das Ergebnis als Summe in die entsprechende Zelle
eingetragen. Sondern alle WEs werden als Additions-Formel
eingetragen. In der Zelle sieht man dann jeden
einzelnen WE mit der Einzelmenge.
Beispiel: "= 50 + 20 + 30"
Angezeigt wird natürlich das Ergebnis (hier 100). Aber in
der Bearbeitungszeile sieht man die Formel und damit sowohl
die Anzahl der WEs und wieviel bei jedem WE geliefert
wurde.
Weil eine Kontrolle der WE-Historie nur gelegentlich und in
Ausnahmefällen nötig ist, ist diese besonders "Platz sparende"
Methode gut geeignet.
Option Explicit Sub WE_auf_akt_Zeile() ' Shortcut = Strg + e Dim Zeile& 'as Long (aktuelle Zeile) Dim WEMenge# 'as Double (Wareneingansmenge) Dim MengenZelle As Range Dim MengenEintragAlt$ 'as String Dim WEDatum As Date '(Wareneingansdatum) Zeile = ActiveCell.Row Set MengenZelle = Range("F" & Zeile) MengenEintragAlt = MengenZelle.Formula WEMenge = InputBox("WE-WEMenge eingeben", "WE in aktueller Zeile") WEDatum = Date Range("E" & Zeile).Value = WEDatum With MengenZelle 'prüfen, ob die Zelle bereits eine Formel enthält: If .HasFormula = True Then 'Formel ergänzen: .Formula = MengenEintragAlt & "+" & WEMenge 'prüfen, ob die Zelle bisher nur einen einzigen Wert enthält: ElseIf Not IsEmpty(MengenZelle) Then 'alten Wert plus neuen WE-Wert als Formel eintragen: .Formula = "=" & MengenEintragAlt & "+" & WEMenge 'ist die Zelle noch leer, wird nur der eine neue WE-Wert eingetragen: Else .Value = WEMenge End If End With End Sub