Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  Inventor VBA
  Stückliste per Makro auslesen

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte
Autor Thema:  Stückliste per Makro auslesen (3310 mal gelesen)
Volker E
Mitglied
Konstrukteur


Sehen Sie sich das Profil von Volker E an!   Senden Sie eine Private Message an Volker E  Schreiben Sie einen Gästebucheintrag für Volker E

Beiträge: 164
Registriert: 20.08.2012

Win 7 64 bit,
Inventor 2015 Sp2 64 bit
Intel Xeon CPU E5-1607 3,00 GHz 32GB RAM
Nvidia Quadro 4000
Space Explorer

erstellt am: 20. Aug. 2012 13:23    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


Fehler.JPG


stuckliste_per_Makro.txt

 
Hallo Inventorgemeinde

Ich bin neu im VBA Forum (blutiger Anfänger) und habe mich mal hier durch das Thema Stückliste per Makro auslesen gelesen und einen interessanten Betrag von noctis79 gefunden.

Der Code von noctis79  funktioniert soweit gut.
Was mir allerdings aufgefallen ist es kommt beim Makrodurchlauf zu einer Fehlermeldung (siehe Bild).
Wenn ich bei der Fehlermeldung auf ok klicke läuft das Makro durch und liest die Stückliste aus und schreibt sie in Excel, soweit so gut.
Aber in zweiten Teil (Excel Anteil)des Makros soll hier die Partnummer u. Benennung reingeschrieben werden. Macht sie aber nicht.

Kann es sein das hier die Variabele oName leer bleibt?
Der vollständige Code ist beigefügt.

oExl.Workbooks.Open (oXLSFileName)
With oExl.ActiveWorkbook
  .Sheets(oName).Cells(2, 1) = oPartNumber
  .Sheets(oName).Cells(2, 5) = oDescription
  .Close 1

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

rkauskh
Moderator
Dipl.-Ing. (FH) Versorgungstechnik




Sehen Sie sich das Profil von rkauskh an!   Senden Sie eine Private Message an rkauskh  Schreiben Sie einen Gästebucheintrag für rkauskh

Beiträge: 2166
Registriert: 15.11.2006

Windows 10 x64, AIP 2022

erstellt am: 20. Aug. 2012 14:16    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Volker E 10 Unities + Antwort hilfreich

Hallo

Sind bei dir die iProperties Bezeichnung und Teilenummer gefüllt? Mir scheint die sind leer und deswegen ist der Name leer.

------------------
MfG
Ralf

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Volker E
Mitglied
Konstrukteur


Sehen Sie sich das Profil von Volker E an!   Senden Sie eine Private Message an Volker E  Schreiben Sie einen Gästebucheintrag für Volker E

Beiträge: 164
Registriert: 20.08.2012

Win 7 64 bit,
Inventor 2015 Sp2 64 bit
Intel Xeon CPU E5-1607 3,00 GHz 32GB RAM
Nvidia Quadro 4000
Space Explorer

erstellt am: 20. Aug. 2012 15:24    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


Bild1.JPG


Bild2.JPG

 
Hallo Ralf

Meine iProperties sind ausgefüllt.
Habe aber mal den Code noch einmal angepasst, mir ist auf gefallen
ich habe ja deutsche iPrperties-Benennungen und keine englischen.
Leider funktionier es immer noch nicht wie ich es mir vorstellen.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

rkauskh
Moderator
Dipl.-Ing. (FH) Versorgungstechnik




Sehen Sie sich das Profil von rkauskh an!   Senden Sie eine Private Message an rkauskh  Schreiben Sie einen Gästebucheintrag für rkauskh

Beiträge: 2166
Registriert: 15.11.2006

Windows 10 x64, AIP 2022

erstellt am: 20. Aug. 2012 15:50    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Volker E 10 Unities + Antwort hilfreich

Hallo

Existiert das Verzeichnis C:\Stückli und hast du Zugriff darauf? Bei mir kommt die Meldung wenn diese Voraussetzung nicht gegeben ist.

------------------
MfG
Ralf

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Volker E
Mitglied
Konstrukteur


Sehen Sie sich das Profil von Volker E an!   Senden Sie eine Private Message an Volker E  Schreiben Sie einen Gästebucheintrag für Volker E

Beiträge: 164
Registriert: 20.08.2012

Win 7 64 bit,
Inventor 2015 Sp2 64 bit
Intel Xeon CPU E5-1607 3,00 GHz 32GB RAM
Nvidia Quadro 4000
Space Explorer

erstellt am: 23. Aug. 2012 10:09    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo tut mir leid das ich mich erst jetzt melde. War aud Dienstreise.

Das mit der Fehlermeldung habe ich behoben (hatte im Verzeichnisnamen einen Dreher drin). Also das Makro liest mir die Stückliste jetzt aus und speichert sie bei mir auf C:\temp mit Bauteilnummer ab.
Soweit so gut, aber mit der Bezeichung geht es noch nicht.
Ein Kollege von mir meinte vielleicht gibt es Probleme mit dem Namen
(Bezeichnung/ Description) hat sich hier etwas in IV 2013 geändert?
Ab der Version 2013 gibt neu die Sprachpakete für IV.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

rkauskh
Moderator
Dipl.-Ing. (FH) Versorgungstechnik




Sehen Sie sich das Profil von rkauskh an!   Senden Sie eine Private Message an rkauskh  Schreiben Sie einen Gästebucheintrag für rkauskh

Beiträge: 2166
Registriert: 15.11.2006

Windows 10 x64, AIP 2022

erstellt am: 23. Aug. 2012 10:43    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Volker E 10 Unities + Antwort hilfreich

Hi

Nicht das ich wüßte. Man sollte aber generell die internen Namen verwenden, da die sich definitiv nicht ändern werden.
Kannst ja testen, ersetz mal:

Code:
For Each i In oProp
    If i.DisplayName = "Bezeichnung" Then
        oDescription = i.Expression
    ElseIf i.DisplayName = "Bauteilnummer" Then
        oPartNumber = i.Expression
    End If
   
Next

durch:

Code:
For Each i In oProp
    If i.Name = "Description" Then
        oDescription = i.Expression
    ElseIf i.DisplayName = "Bauteilnummer" Then
        oPartNumber = i.Expression
    End If
   
Next

Wenn's dann wieder nicht geht, poste bitte nochmal deinen aktuellen Code und eine Kopie der Stücklistenvorlage, die du verwendest. Enthaltene Firmennamen und ähnliches vorher rauslöschen.

------------------
MfG
Ralf

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Volker E
Mitglied
Konstrukteur


Sehen Sie sich das Profil von Volker E an!   Senden Sie eine Private Message an Volker E  Schreiben Sie einen Gästebucheintrag für Volker E

Beiträge: 164
Registriert: 20.08.2012

Win 7 64 bit,
Inventor 2015 Sp2 64 bit
Intel Xeon CPU E5-1607 3,00 GHz 32GB RAM
Nvidia Quadro 4000
Space Explorer

erstellt am: 23. Aug. 2012 11:07    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


AktuellerCode.txt


Stuckli.txt

 
Hallo Ralf

hier mein aktueller Code und eine Stücklistenvorlage

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

rkauskh
Moderator
Dipl.-Ing. (FH) Versorgungstechnik




Sehen Sie sich das Profil von rkauskh an!   Senden Sie eine Private Message an rkauskh  Schreiben Sie einen Gästebucheintrag für rkauskh

Beiträge: 2166
Registriert: 15.11.2006

Windows 10 x64, AIP 2022

erstellt am: 23. Aug. 2012 13:14    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Volker E 10 Unities + Antwort hilfreich


iProp_BOMExport.jpg

 
Hallo

Ich hab's probiert. Bei mir schreibt er das iProp Bezeichnung raus. Ich konnte allerdings deine Vorlage (Excel2010?) nicht verwenden. Die sollte es aber nicht sein, sonst würde der ganze Export scheitern. Oder ist Zelle F2 über "Zellen verbinden" verbunden mit einer anderen Zelle. Dann entferne das bitte mal testweise.
Nur nochmal zur Sicherheit, wir reden von dem iProp im angehängten Screenshot?

------------------
MfG
Ralf

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Volker E
Mitglied
Konstrukteur


Sehen Sie sich das Profil von Volker E an!   Senden Sie eine Private Message an Volker E  Schreiben Sie einen Gästebucheintrag für Volker E

Beiträge: 164
Registriert: 20.08.2012

Win 7 64 bit,
Inventor 2015 Sp2 64 bit
Intel Xeon CPU E5-1607 3,00 GHz 32GB RAM
Nvidia Quadro 4000
Space Explorer

erstellt am: 23. Aug. 2012 14:02    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Ralf

ja wir reden über das iProperties Bezeichnung wie in Deiner Abbildung.Ich habe es mit i.Name, und i.DisplayName probiert.
Leider kein Erfolg. Welche IV Version hast Du? Ich gehe davon aus
Du hast auch wie ich eine Baugruppe erstellt und dann eine Ableitung gemacht?

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

bwr
Mitglied
Konstrukteur


Sehen Sie sich das Profil von bwr an!   Senden Sie eine Private Message an bwr  Schreiben Sie einen Gästebucheintrag für bwr

Beiträge: 129
Registriert: 21.02.2007

erstellt am: 23. Aug. 2012 14:11    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Volker E 10 Unities + Antwort hilfreich

Ich hab's nicht getestet, aber schau mal nach im Debugger nach ob bei "oDescription" und "oPartNumber" überhaupt was drin steht weil du i.Expression holst. Ich hätte es stattdessen mit i.Value probiert.

Gruß
Andi

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Volker E
Mitglied
Konstrukteur


Sehen Sie sich das Profil von Volker E an!   Senden Sie eine Private Message an Volker E  Schreiben Sie einen Gästebucheintrag für Volker E

Beiträge: 164
Registriert: 20.08.2012

Win 7 64 bit,
Inventor 2015 Sp2 64 bit
Intel Xeon CPU E5-1607 3,00 GHz 32GB RAM
Nvidia Quadro 4000
Space Explorer

erstellt am: 23. Aug. 2012 14:59    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


Bild20.JPG

 
Hallo Andi
habs mit i.value probiert ging auch nicht.Mir ist aber jetzt was aufgefallen schau Dir mal die Bilder an.
In der IDW Eigenschaften- Modell steht Beschreibung in den iProperties der Baugruppe\Bauteile steht Bezeichnung.
Ich kann auch nicht inden Eigenschaft-Modell in der IDW etwas anderes auswählen.Die IAM IPT u. IDW Vorlage sind  orginal IV.
Ist mir auf gefallen nach dem ich IV 2011 bei einem Kollegen geöffnet habe. Wes jemand wieso das bei IV 2013 auftritt?

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Volker E
Mitglied
Konstrukteur


Sehen Sie sich das Profil von Volker E an!   Senden Sie eine Private Message an Volker E  Schreiben Sie einen Gästebucheintrag für Volker E

Beiträge: 164
Registriert: 20.08.2012

Win 7 64 bit,
Inventor 2015 Sp2 64 bit
Intel Xeon CPU E5-1607 3,00 GHz 32GB RAM
Nvidia Quadro 4000
Space Explorer

erstellt am: 23. Aug. 2012 15:06    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Sorry muß mich revidieren im 2011 IV steht es genau so.
Aber mich verlesen.Dieser Ansatz ist schrott.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

bwr
Mitglied
Konstrukteur


Sehen Sie sich das Profil von bwr an!   Senden Sie eine Private Message an bwr  Schreiben Sie einen Gästebucheintrag für bwr

Beiträge: 129
Registriert: 21.02.2007

erstellt am: 23. Aug. 2012 15:18    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Volker E 10 Unities + Antwort hilfreich

Ich könnte es eh nicht probieren da ich kein Inventor 2013 habe.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

rkauskh
Moderator
Dipl.-Ing. (FH) Versorgungstechnik




Sehen Sie sich das Profil von rkauskh an!   Senden Sie eine Private Message an rkauskh  Schreiben Sie einen Gästebucheintrag für rkauskh

Beiträge: 2166
Registriert: 15.11.2006

Windows 10 x64, AIP 2022

erstellt am: 23. Aug. 2012 16:17    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Volker E 10 Unities + Antwort hilfreich

Hallo

Ja, eine Baugruppe und Zeichnungsableitung davon. Der Code ist sauber, der läuft bei mir mit 2011 und 2013 problemlos. Kannst du mal eine Demobaugruppe machen, die iProps füllen (mit Fantasiename und -teilenummer), Zeichnung mit Teileliste davon (Schriftfeld entfernen) erstellen und das als Zip hier reinstellen, falls mit der Demo-BG die gleichen Probleme auftreten?

Die Bezeichnung die im Textfelddialog angezeigt wird, ist mM ein typischer Übersetzungsfehler im Inventor. Mal übersetzt man Description mit Bezeichnung, mal mit Benennung, mal übersetzt man back mit zurück, mal mit hinten, usw. usw. Nur wundern. 

------------------
MfG
Ralf

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Volker E
Mitglied
Konstrukteur


Sehen Sie sich das Profil von Volker E an!   Senden Sie eine Private Message an Volker E  Schreiben Sie einen Gästebucheintrag für Volker E

Beiträge: 164
Registriert: 20.08.2012

Win 7 64 bit,
Inventor 2015 Sp2 64 bit
Intel Xeon CPU E5-1607 3,00 GHz 32GB RAM
Nvidia Quadro 4000
Space Explorer

erstellt am: 24. Aug. 2012 08:04    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities


Test.zip

 
Hallo Ralf

hier eine Testbaugruppe habe auch mal meine Design Data dabei gemacht.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

rkauskh
Moderator
Dipl.-Ing. (FH) Versorgungstechnik




Sehen Sie sich das Profil von rkauskh an!   Senden Sie eine Private Message an rkauskh  Schreiben Sie einen Gästebucheintrag für rkauskh

Beiträge: 2166
Registriert: 15.11.2006

Windows 10 x64, AIP 2022

erstellt am: 24. Aug. 2012 19:10    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Volker E 10 Unities + Antwort hilfreich

Hallo

In deiner Beispielzeichnung ist das iPropertie "Bezeichnung" leer. Kein Wunder das in der Exceltabelle nix ankommt. Entweder füllst du dieses oder du ersetzt das

Code:
For Each i In oProp
    If i.Name = "Description" Then
        oDescription = i.Expression
    ElseIf i.DisplayName = "Bauteilnummer" Then
        oPartNumber = i.Expression
    End If
Next

mit dem

Code:
For Each i In oProp
    If i.DisplayName = "Bauteilnummer" Then
        oPartNumber = i.Expression
    End If
Next

Dim oReferencedDoc As Document
Set oReferencedDoc = odoc.ReferencedDocuments.Item(1)
Set oProp = oReferencedDoc.PropertySets.Item("Design Tracking Properties")

For Each i In oProp
    If i.Name = "Description" Then
        oDescription = i.Expression
    End If
Next


Bedenke aber, das das nur funktioniert wenn immer nur eine Baugruppe pro Zeichnung dargestellt wird. Werden mehrere Baugruppen in einer IDW (auf einem Blatt oder mehreren spielt keine Rolle) dargestellt, wird nur die Bezeichnung der ersten Baugruppe übernommen.

------------------
MfG
Ralf

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

panikkalle
Mitglied
Konstrukteur

Sehen Sie sich das Profil von panikkalle an!   Senden Sie eine Private Message an panikkalle  Schreiben Sie einen Gästebucheintrag für panikkalle

Beiträge: 5
Registriert: 24.01.2009

erstellt am: 24. Aug. 2012 20:25    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Volker E 10 Unities + Antwort hilfreich

Hallo Ralf

Du hast natürlich Recht man sollte die Properties schon ausfüllen.
Habe den Wald vor lauter Bäumen nicht mehr gesehen. Bin in Inventor eben noch ein Anfänger.  

Nochmals Danke für die schnelle Hilfe.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz