Rohstoffliste und Mischungsrechner

Basy

Mitglied
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:
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.
 

Anhänge

  • Blatt_Rohstoffe.JPG
    Blatt_Rohstoffe.JPG
    19,4 KB · Aufrufe: 34
  • Blatt_Produkt01.JPG
    Blatt_Produkt01.JPG
    29,3 KB · Aufrufe: 25
  • Roh_Pro.zip
    9,2 KB · Aufrufe: 19
Hallo Basy, Du auch hier?

-Ja.

Und hat Dir schon einer geantwortet?

-Nein.

Komisch.

-Find ich auch. 21 Leute haben sich bis jetzt meinen Beitrag angesehen und 0 sich mal meine Datei. Ich hab schon überlegt ob ich die Sache falsch beschrieben habe, oder was nicht klar ist, aber dann kann man doch fragen. Mir ist auch aufgefallen, das so einige Beiträge hier ( Visual Basic 6.0) unbeantwortet bleiben, scheint so eine Art Einnstellung, oder gar Sport zu sein.

Ich versteh das auch nicht.
Am besten Du schließt das Ganze hier.

-Ich glaub Du hasst recht.

-ICH MACH DANN MAL ZU, NÄ?!
 
Hallo,

ich bins mal wieder, der der fragt und keine Antworten erhält.
Ich habe inzwischen das Problem gelöst, falls es jemanden interessiert. Ich habe einfach über Einfügen/Namen/Definieren in der Spalte des jeweiligen Rohstoffs der Zelle einen Namen gegeben (siehe Bild Tabellenblatt_Rohstoffe.jpg) anstatt der Zellenkoordinate und das Script vom Blatt_Produkt01 angepasst.

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Sheets("Rohstoffe").Range("Rohstoff02").Value = Sheets("Produkt01").Range("C6").Value
End Sub

Jetzt kann ich soviele neue Zeilen vor Rohstoff02 einfügen wie ich will und der Mischungsrechner zieht weiterhin den richtigen Rohstoff vom Blatt_Rohstoffe ab.

P.S.: Darf man sich eigentlich selbst bewerten?
 

Anhänge

  • Tabellenblatt_Rohstoffe.jpg
    Tabellenblatt_Rohstoffe.jpg
    89,8 KB · Aufrufe: 20
Solche Selbstgespräche sind der beste Weg, in Zukunft ignoriert zu werden. Du könntest z.B. in Betracht ziehen, dass es Weihnachtszeit ist und viele User nur mal so kurz reinsehen. Es soll auch welche geben, die noch arbeiten und am Wochenende Freizeit haben wollen, aber nein, wenn Basy ruft, muss man alles liegen und stehen lassen.

Last but not least leben angeblich auch Leute, die kein VB/VBA können oder kein MS-Office haben, ich hab davon Gerüchte gehört.


Der Doc!
 

Neue Beiträge

Zurück