| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
| |
| Request a special discount on NVIDIA RTX 5000 Ada Generation GPU !, eine Pressemitteilung
|
Autor
|
Thema: VBA Export der BOM (768 / mal gelesen)
|
Einhugo Mitglied
Beiträge: 2 Registriert: 05.11.2021
|
erstellt am: 05. Nov. 2021 11:07 <-- editieren / zitieren --> Unities abgeben:
Hallo wir haben seit der Umstellung auf Inventor 2022 folgendes Problem beim BOM Export aus einer BG: mit dem Befehl ' BOM wird exportiert Call oStructuredBOMView.Export(CSVPfad, kTextFileCommaDelimitedFormat) wird für alle Modelzustände je eine Spalte Anzahl mit ausgegeben wenn der Export im Inventor in der Stückliste von Hand erfolgt dann wird nur eine Spalte Anzahl ausgegeben. Was Hat sich beim Wechsel auf 2022 geändert, bzw. wie kann die Ausgabe von allen Modelzuständen als Spalte Anzahl vermieden werden? gruss kp
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2580 Registriert: 15.11.2006 Windows 10 x64, AIP 2020-2025
|
erstellt am: 05. Nov. 2021 14:57 <-- editieren / zitieren --> Unities abgeben: Nur für Einhugo
Hallo Derzeit geht es nicht zu vermeiden. Das Problem ist Autodesk auch bekannt. Ich hoffe auf ServicePack 2. Du kannst lediglich hinterher im Excel die überflüssigen Spalten löschen. EDIT: ServicePack 2 brachte keine Veränderung am Verhalten. ------------------ MfG Ralf RKW Solutions GmbH www.RKW-Solutions.com Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
rkauskh Moderator Dipl.-Ing. (FH) Versorgungstechnik
Beiträge: 2580 Registriert: 15.11.2006 Windows 10 x64, AIP 2020-2025
|
erstellt am: 06. Nov. 2021 15:08 <-- editieren / zitieren --> Unities abgeben: Nur für Einhugo
Hallo Noch ein einfaches Beispiel wie man das Löschen der überflüssigen Spalten umsetzen könnte. Hier wird davon ausgegangen, das die Spalte mit dem aktiven Modellzustand behalten werden soll. Code:
Option ExplicitPublic Sub BOMExport() ' ############################################################# ' requires reference to Microsoft Excel XX.0 Object Library !!! ' ############################################################# Dim oDoc As AssemblyDocument Set oDoc = ThisApplication.ActiveDocument Dim oBOM As BOM Set oBOM = oDoc.ComponentDefinition.BOM oBOM.StructuredViewFirstLevelOnly = False oBOM.StructuredViewEnabled = True Dim oStructuredBOMView As BOMView Set oStructuredBOMView = oBOM.BOMViews.Item("Strukturiert") Dim sPath As String sPath = "C:\temp\BOM-StructuredAllLevels.xls" '<-- Pfad anpassen oStructuredBOMView.Export sPath, kMicrosoftExcelFormat Dim oExcelApp As Excel.Application Dim oWB As Workbook Dim oWS As WorkSheet Dim sSearch As String Dim oRng As Excel.Range Dim oModelstate As ModelState Set oExcelApp = GetObject("", "Excel.Application") If oExcelApp Is Nothing Then MsgBox ("Can't get Excel") Exit Sub End If Set oWB = oExcelApp.Workbooks.Open(sPath) If Not oWB Is Nothing Then Set oWS = oWB.ActiveSheet End If If Not oWS Is Nothing Then For Each oModelstate In oDoc.ComponentDefinition.ModelStates If Not oModelstate.Name = oDoc.ComponentDefinition.ModelStates.ActiveModelState.Name Then sSearch = "ANZAHL (" & oModelstate.Name & ")" With oWS.Range("1:1") Set oRng = .Find(sSearch, LookIn:=xlValues, LookAt:=xlWhole) If Not oRng Is Nothing Then oRng.EntireColumn.Delete End If Set oRng = Nothing End With End If Next End If Set oWS = Nothing oWB.Save oWB.Close If oExcelApp.Workbooks.Count = 0 Then oExcelApp.Quit End If End Sub
------------------ MfG Ralf RKW Solutions GmbH www.RKW-Solutions.com Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Einhugo Mitglied
Beiträge: 2 Registriert: 05.11.2021
|
erstellt am: 08. Nov. 2021 10:01 <-- editieren / zitieren --> Unities abgeben:
hallo rkauskh vielen Dank für die Antwort ich bin recht neu hier wie kann ich Ü's vergeben ich werde Ihren Vorschlag die Spalten in Excel zu löschen verwenden zur gleiche Frage hatte ich auch einen Case aufgemacht den Hr. Hübner beantwortet hat mit Verweis auf Ihren Beitrag mfg kp
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |