Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Stückliste mit VBA auswerten

Forumthread: Stückliste mit VBA auswerten

Stückliste mit VBA auswerten
29.08.2018 10:44:02
Maik
Hallo Zusammen,
Ich habe aus einem CAD Programm eine Stückliste erzeugt.
Diese enthält Zusammenbauten als auch Einzelteile und wird in einer Hirachie (hier Stufe genannt) angezeigt.
Die Datei habe ich hier hochgeladen.
https://www.herber.de/bbs/user/123632.xlsx
Wie man sehen kann, kommt es vor, dass Teile wie auch Zusammenbauten mehrmals in der Liste erscheinen.
Um auf die Gesamtstückzahlen zu kommen, müssen Teile und Baugruppen miteinander multipliziert und addiert werden.
Z.B.:
Der Unter-Zusammenbau_2 von Stufe 1.6 ist an dieser Stelle 5x vorhanden. Dieser enthält aber noch 2x Unter-Zusammenbau_3 (Stufe 1.6.2) welcher wiederum aus den Teilen 2x Teil_1 (Stufe 1.6.2.1) und 4x Teil_3 (Stufe 1.6.2.2) besteht.
Um jetzt auf die Gesamtstückzahl von Teil_1 zu kommen, muss:
2x Teil_1 * 2x Unter-Zusammenbau_3 * 5x Unter-Zusammenbau_2
gerechnet werden.
Und dieses Ergebnis muss dann zu den Zwischenergebnissen von weiter oben addiert werden.
Im Cad Programm ist es zwar möglich, mir eine Liste zu erzeugen, die nur Teile mit den richtigen Stückzahlen anzeigt, aber leider ist es nur sehr umständlich möglich, eine Liste zu erzeugen die auch die richtigen Stückzahlen der Zusammenbauten anzeigt.
Daher habe ich jetzt die Frage an euch, wie kann ich das mit einem VBA Programm lösen, dass ich auf die passenden Stückzahlen komme?
Ich stehe leider etwas auf den Schlauch, wie ich da anfangen soll...
Anzeige

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Stückliste mit VBA auswerten
29.08.2018 11:19:18
Daniel
Hi
das Ausmultiplizieren kann man auch per Formel in der Tabelle machen.
man sollte halt wissen, wieviele Stufen es gibt.
https://www.herber.de/bbs/user/123638.xlsm
Gruß Daniel
AW: Stückliste mit VBA auswerten
29.08.2018 11:31:57
Maik
Hallo,
Leider ist die Stufenanzahl immer unterschiedlich.
Und welche Formel in der Tabelle?
Gruß Maik
Anzeige
AW: Stückliste mit VBA auswerten
29.08.2018 11:51:16
Daniel
Hi
du brauchst das ganze Formelwerk in der Tabelle.
je nachdem, wieviele Stufen du hast, musst du eben Spalten hinzufügen.
Gruß Daniel
sorry falsche Datei
29.08.2018 11:59:28
Daniel
schau dir mal die an.
hab zum Hochladen die falsche erwischt:
https://www.herber.de/bbs/user/123642.xlsx
Gruß Daniel
Anzeige
AW: sorry falsche Datei
29.08.2018 12:38:35
Maik
Hey,
vielen Dank schonmal soweit!
Nur will ich die Liste später weiter mit VBA auswerten.
Daher wäre das Ganze als VBA Code sehr hilfreich.
Würdest du da die Werte auch in die Spatlen schreiben lassen?
AW: sorry falsche Datei
29.08.2018 12:51:14
Daniel
HI
ist geschmackssache.
du kannst die Auswertung auch komplett programmieren.
Wenn es eine Formellösung gibt, kann man auch per VBA die Formeln in die Tabelle schreiben und mit den Formelergebnissen weiter arbeiten.
wenn man die Ergebisse hat, kann man die Formeln ja wieder löschen.
Gruß Daniel
Anzeige
AW: Stückliste mit VBA auswerten
29.08.2018 12:57:35
Maik
Hi,
was du bei "Ebene gemacht hast ist mir soweit klar.
Die Punkte gezählt + 1
Aber die Formel aus E1 verstehe ich nicht ganz.
Was machst du da?
AW: Stückliste mit VBA auswerten
29.08.2018 13:08:27
daniel
Hi
in der Zeile 1 sind nochmal die Ebenen 1-x abgebildet
für die Ebene, die der Ebene der Zeile entspricht, wird der Stückzahlfaktor aus der Spalte B übernommen.
für höher Ebenen (kleiner Nummer) wird der Faktor aus der darüber liegenden Zeile übernommen.
somit hast du dann alle für die jeweilige Ebene gültigen Faktoren in einer Zelle und kannst diese ausmultiplizieren (Formel in der letzten Spalte)
Gruß Daniel
Anzeige
AW: sorry falsche Datei
29.08.2018 13:45:32
Maik
Super,
damit komme ich dann weiter!
Vielen Dank!
Gruß
Maik
;
Anzeige
Anzeige

Infobox / Tutorial

Stückliste mit VBA auswerten


Schritt-für-Schritt-Anleitung

  1. Daten vorbereiten: Lade die Excel-Datei mit der Stückliste, die du aus dem CAD-Programm (z.B. CATIA) erzeugt hast. Stelle sicher, dass die Daten in einer klaren Hierarchie angeordnet sind.

  2. VBA-Editor öffnen: Drücke ALT + F11, um den VBA-Editor zu öffnen.

  3. Neues Modul erstellen: Klicke im Menü auf Einfügen und wähle Modul, um ein neues Modul anzulegen.

  4. VBA-Code einfügen: Füge den folgenden Code in das Modul ein:

    Sub AuswertungStueckliste()
       Dim i As Long
       Dim GesamtStueckzahl As Long
    
       ' Hier wird die Schleife durch die Zeilen der Stückliste durchgeführt
       For i = 2 To Cells(Rows.Count, 1).End(xlUp).Row
           GesamtStueckzahl = GesamtStueckzahl + Cells(i, 2).Value * Cells(i, 3).Value
       Next i
    
       ' Ausgabe des Ergebnisses in die Zelle D1
       Cells(1, 4).Value = GesamtStueckzahl
    End Sub
  5. Code ausführen: Schließe den VBA-Editor und gehe zurück zu Excel. Drücke ALT + F8, wähle AuswertungStueckliste und klicke auf Ausführen.

  6. Ergebnis überprüfen: Die Gesamtstückzahl sollte nun in Zelle D1 angezeigt werden.


Häufige Fehler und Lösungen

  • Fehler: "Typen nicht übereinstimmend"

    • Lösung: Stelle sicher, dass die Werte in den Zellen, die du multiplizieren möchtest, als Zahlen formatiert sind und keine Textwerte enthalten.
  • Fehler: "Index außerhalb des Bereichs"

    • Lösung: Überprüfe, ob die Schleife die korrekten Zeilen durchläuft. Vergewissere dich, dass deine Stückliste korrekt ausgefüllt ist und keine leeren Zeilen vorhanden sind.

Alternative Methoden

Wenn du nicht mit VBA arbeiten möchtest, kannst du auch die Excel-Formeln nutzen, um die Stückliste zusammenzufassen. Verwende die Funktion SUMPRODUCT, um die Stückzahlen zu multiplizieren und die Gesamtanzahl zu berechnen. Beispiel:

=SUMPRODUCT(A2:A10, B2:B10)

Diese Formel multipliziert die Werte in den Zellen A2 bis A10 mit den Werten in B2 bis B10 und summiert die Ergebnisse.


Praktische Beispiele

  • Beispiel 1: Angenommen, du hast eine Stückliste mit den folgenden Daten:
Teil Menge Stufe
Teil_1 2 1
Unter-Zusammenbau_3 5 2

Die VBA-Auswertung würde die Gesamtstückzahl von Teil_1 als 10 ausgeben (2 * 5).

  • Beispiel 2: Wenn du mehrere Ebenen in deiner Stückliste hast, kannst du die hierarchischen Beziehungen in deinem VBA-Code berücksichtigen, um auch tiefere Zusammenbauten auszuwerten.

Tipps für Profis

  • Nutze die Möglichkeit, deine Excel-Stückliste mit benutzerdefinierten Funktionen zu erweitern, um komplexe Berechnungen durchzuführen.
  • Halte deinen VBA-Code modular, indem du verschiedene Subroutinen für verschiedene Aufgaben erstellst.
  • Experimentiere mit dem Debugging im VBA-Editor, um mögliche Fehlerquellen schnell zu identifizieren.

FAQ: Häufige Fragen

1. Wie kann ich die Stückliste excelbetreffend filtern? Du kannst Filter in der Excel-Tabelle verwenden, um bestimmte Teile oder Baugruppen anzuzeigen. Benutze die Filterfunktion in der Registerkarte Daten.

2. Ist es besser, VBA oder Formeln zu verwenden? Das hängt von der Komplexität deiner Stückliste ab. VBA ist flexibler und kann bei großen Datenmengen schneller sein, während Formeln einfacher zu verstehen und anzuwenden sind.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige