Lager Ein- und Ausgänge verbuchen mit VBA in Excel

  • Excel

Es gibt 9 Antworten in diesem Thema. Der letzte Beitrag () ist von Ray.

    Lager Ein- und Ausgänge verbuchen mit VBA in Excel

    Hallo ,

    Für meine kleine Weinhandlung möchte ich Waren Ein- und Ausgänge in den Lagerbestand verbuchen.
    D.h. ein Button mit VBA Code der folgendes ausführt:
    Im Blatt "Bestellung" die Stückzahlen je Artikelnummer suchen und in einem anderen Blatt "Lagerbestand" addieren.
    Wobei die Anzahl Artikel (=Anzahl Zeilen) in der Bestellung variieren kann.
    Also ein Loop der alle Positionen in der Bestellung absucht und im Lagerbestand die zugehörige Artikelnummer sucht und da die Anzahl addiert.

    Wäre froh um jegliche Hilfe da ich schon länger nicht mehr programmiert habe.

    Danke und Gruss, Ray
    Hallo Ray,
    wäre es nicht Sinnvoller, gleich eine "anständige" Software dafür zu erwerben, als sowas in Excel machen zu wollen? (Mir fällt da immer Lexware ein, weiß aber nicht, ob die Software wirklich was taugt. Ggf. nach alternativen Suchen) Eine Warenwirtschaft kann schnell komplex werden.

    Hast du selbst schon etwas an deiner Excel-Mappe probiert, um dein Vorhaben zu verwirklichen?
    Hallo,

    Ja ich habe bereits eine recht umfangreiche Excel mit Kundenstamm, Materialstamm, Bestellungen in 4 Sprachen, Preislisten etc.
    Für diese Buchung habe ich eine ganz einfache VBA die lediglich 2 Zellen addiert.
    Beim VBA bin ich allerdings nicht genügend bewandt, habe vor 20 Jahren mal etwas VB programmiert, ist aber zu lange her.
    Siehe das auch als Hobby oder persönlicher Anreiz.

    Ich denke das dürfte kein Hexenwerk sein, müsste jedoch einen kleinen Anstoss haben ;)

    Danke + Gruss
    Ray

    Ray schrieb:

    Also ein Loop der alle Positionen in der Bestellung absucht und im Lagerbestand die zugehörige Artikelnummer sucht und da die Anzahl addiert.
    Da du wenig über deine Struktur verrätst, kann ich leider nur phantasievoll interpretieren:

    Visual Basic-Quellcode

    1. For Each Pos in Intersect(Range("Bestellungen"), Columns(PositionSpalte))
    2. Anzahl = Val(Pos.Offset(0,1).Value)
    3. If Anzahl <> 0 Then
    4. Set c = LagerBestand.Columns(ArtikelnummerSpalte).Find(Pos.Value, LookIn:=xlValues, LookAt:=xlWhole)
    5. If Not c is Nothing Then c.Offset(0,1).Value = c.Offset(0,1).Value + Anzahl
    6. End If
    7. Next
    --
    If Not Program.isWorking Then Code.Debug Else Code.DoNotTouch
    --

    Dieser Beitrag wurde bereits 5 mal editiert, zuletzt von „petaod“ ()

    Hier die .xlsm Datei als Zipfile.
    Register "Bestellung (1)" mit Button "Einbuchen".
    Dabei sollten die Stückzahlen aus Kolonne F, nach Artikel in Kolonne B, in Register "Lagerbestand" Kolonne S addiert werden, auf der Zeile wo der Artikel (A) übereinstimmt.

    Vielen Dank!
    Dateien
    • ERP2.zip

      (69,22 kB, 86 mal heruntergeladen, zuletzt: )