Moin moin,
ich bin seit einiger Zeit damit beschäftigt eine Rohstoffliste und einen Mischungsrechner zu erstellen. Auf einen Blatt sind die ganzen Rohstoffe aufgelistet und auf ein anderes Blatt ein Mischungsrechner (siehe Bilder und die Datei).
Blatt_Rohstoffe:
Bestand ist klar, Wareneingang auch und der Ausgang erfolgt über den Verbrauch an Rohstoffen vom Blatt_Produkt01. Das klappt alles wunderbar.
Blatt_Produkt01:
Rechts die Rezeptur dient als Referänz für die linke Seite. Es muss nur auf der linken Seite die zu produzierende Menge eingetragen werden und man erhält die Mengen an Rohstoffe die dafür benötigt werden, diese werden dann vom Blatt_Rohstoffe abgezogen. Auch das klappt wunderbar.
Script Blatt_Rohstoffe:
Script Blatt_Produkt01:
Das Problem ist, wenn ich ein Rohstoff01 in die Rostoffliste eintrage (vor Rohstoff02, Zellen einfügen), dann stimmt ja das Script vom Blatt_Produkt01 ja nicht mehr, da es sich ja direkt auf die Zellen vom Blatt_Rohstoffe bezieht.
Meine Frage ist, wie muss das Script aussehen damit auch immer die Mengen von den jeweiligen Rohstoff abgezogen werden (in bezug auf Rohstoffname und der dazugehörigen Spalte C)?
Was VBA betrifft hab ich keine Ahnung und die Scripts hab ich mir aus den Web zusammen gesucht und angepasst.
ich bin seit einiger Zeit damit beschäftigt eine Rohstoffliste und einen Mischungsrechner zu erstellen. Auf einen Blatt sind die ganzen Rohstoffe aufgelistet und auf ein anderes Blatt ein Mischungsrechner (siehe Bilder und die Datei).
Blatt_Rohstoffe:
Bestand ist klar, Wareneingang auch und der Ausgang erfolgt über den Verbrauch an Rohstoffen vom Blatt_Produkt01. Das klappt alles wunderbar.
Blatt_Produkt01:
Rechts die Rezeptur dient als Referänz für die linke Seite. Es muss nur auf der linken Seite die zu produzierende Menge eingetragen werden und man erhält die Mengen an Rohstoffe die dafür benötigt werden, diese werden dann vom Blatt_Rohstoffe abgezogen. Auch das klappt wunderbar.
Script Blatt_Rohstoffe:
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim RaBereich As Range, RaZelle As Range
Set RaBereich = Range("C:D")
For Each RaZelle In Range(Target.Address)
If Not Intersect(Target, Range("C:C")) Is Nothing Then
Cells(Target.Row, 2) = Cells(Target.Row, 2) - Cells(Target.Row, 3)
End If
If Not Intersect(Target, Range("D:D")) Is Nothing Then
Cells(Target.Row, 2) = Cells(Target.Row, 2) + Cells(Target.Row, 4)
End If
Next RaZelle
End Sub
Script Blatt_Produkt01:
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Sheets("Rohstoffe").Range("C2").Value = Sheets("Produkt01").Range("C6").Value
End Sub
Das Problem ist, wenn ich ein Rohstoff01 in die Rostoffliste eintrage (vor Rohstoff02, Zellen einfügen), dann stimmt ja das Script vom Blatt_Produkt01 ja nicht mehr, da es sich ja direkt auf die Zellen vom Blatt_Rohstoffe bezieht.
Meine Frage ist, wie muss das Script aussehen damit auch immer die Mengen von den jeweiligen Rohstoff abgezogen werden (in bezug auf Rohstoffname und der dazugehörigen Spalte C)?
Was VBA betrifft hab ich keine Ahnung und die Scripts hab ich mir aus den Web zusammen gesucht und angepasst.