Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  Inventor VBA
  Stückliste per Makro nach Excel exportieren

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 nach Excel exportieren (8587 mal gelesen)
Didikalle
Mitglied
Konstrukteur


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

Beiträge: 91
Registriert: 07.10.2011

Ich nutze Inventor 2016 mit dem BS Win 10

erstellt am: 07. Okt. 2011 18: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

Hallo liebe Fachwelt

Als Anwender von INV 2012 möchte ich mir immer wieder kehrende Aufgaben erleichtern. Dazu gehört auch der Export einer Stückliste von IDW nach XLS.
In Inventor 2012 habe ich die Möglichkeit, die Stückliste einer IDW in eine Exceldatei zu exportieren. Hierzu gehe ich folgendermaßen vor. In den Iproperties füge ich den Dateinamen und die Benennung mit einem „.“ getrennt zusammen (DL-020110333.Konsole). Diesen Wert kopiere ich und setze diesen in das „Stückliste exportieren“ Fenster als Dateiname. In Optionen dieses Fensters setze ich die Anfangszelle für die Excelliste von A1 auf A5 und gebe meine Vorlagenliste (01-Stücklistenvorlage.xls) ein. Dann alles mit ok bestätigt erhalte ich eine Excelstückliste wie ich sie brauche.
Nun zu meiner Frage. Wie muss das Macro aussehen, damit alles mit einem Knopfdruck geschieht, oder gibt es ein Tool, das mich beim Macroerstellen unterstützt (in Deutsch).
Ich hoffe auf Eure Hilfe

------------------
Didi

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

noctis79
Mitglied
Konstrukteur/ CAD-Administrator


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

Beiträge: 164
Registriert: 07.10.2009

Inventor Pro 2017
Cideon Workspace

erstellt am: 08. Okt. 2011 22:20    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 Didikalle 10 Unities + Antwort hilfreich

Ist möglich.

Hier mal ein kleiner Ansatz...
Deine Excel- Datei erhält aber im Moment nur den Datei- Namen der IDW.
"Benennung" müsstest Du genauer definieren (Benennung als iProperty, oder meinst Du die Bezeichnung im Browser- Baum?) Willst Du das iProperty unbedingt haben? Wenn ja, welchen Namen hat das iProperty? Ist es ein Benutzerdefiniertes iProperty?

Code:
Sub export_BOM()

Dim oapp As Inventor.Application
Set oapp = ThisApplication
Dim odoc As Inventor.DrawingDocument

If oapp.ActiveDocument.DocumentType <> kDrawingDocumentObject Then
    MsgBox "Funktion ist nur in Zeichnungen zulässig"
    Exit Sub
End If

Set odoc = oapp.ActiveDocument
Dim oOptions As NameValueMap
Set oOptions = ThisApplication.TransientObjects.CreateNameValueMap

Dim oName, oStart, oTemplate, oFullFileName, oFileName, oXLSFileName  As String
Dim oLength As String

oFullFileName = mid(odoc.FullFileName, InStrRev(odoc.FullFileName, "\") + 1)
oLength = Len(oFullFileName)
oFileName = Left(oFullFileName, oLength - 4)
oXLSFileName = "C:\" & oFileName

'oName = Name des Excel- Sheets
oName = "test"
'oStart = Start- Zelle
oStart = "A5"
'oTemplate = Pfad zum xls- Template
oTemplate = "C:\template.xls"

Call oOptions.Add("TableName", oName)
Call oOptions.Add("StartingCell", oStart)
Call oOptions.Add("Template", oTemplate)

Call odoc.ActiveSheet.PartsLists.item(1).Export(oXLSFileName, kMicrosoftExcel, oOptions)

End Sub


Bitte noch oName, oStart und oTemplate mit Deinen Werten ausfüllen...

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

Didikalle
Mitglied
Konstrukteur


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

Beiträge: 91
Registriert: 07.10.2011

Ich nutze Inventor 2016 mit dem BS Win 10

erstellt am: 09. Okt. 2011 11:27    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 noctis79
Besten Dank für diesen Lösungsansatz. Zu Deiner Frage kommend:
Ich habe aus den Iproperties - Projekt - die Bauteilnummer (zB. DL-02011333) und die Bezeichnung (zB. Konsole)genommen mit einem "." getrennt (DL-02011333.Konsole) als Dateiname verwendet. In der Exceldatei wird der Dateiname per Formel wieder geteilt und in "A2" die Bauteilnummer und in "E2" die Bezeichnung eingefügt. Ich denke aber, dass Du hierfür eine bessere Lösung hast und die entspr. Iprops direkt in die Excelfelder bringen kannst.
Die Vorlagenstückliste befindet sich auf "M:\Stücklisten\Dila\" und heisst "01-Stückliste.Vorlage.xls". Im gleichen Ordner sollen dann auch die erzeugten Listen abgelegt werden. Ich würde mich freuen, wenn Du die VBA mit den Daten anpassen würdest. Nochmals besten Dank.

Liebe Grüße

------------------
Didi

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

Didikalle
Mitglied
Konstrukteur


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

Beiträge: 91
Registriert: 07.10.2011

Ich nutze Inventor 2016 mit dem BS Win 10

erstellt am: 09. Okt. 2011 11:52    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

Hier noch ein Nachtrag
Ich habe die VBA angepasst und ausprobiert. Der Debug kommt und zeigt die letzte Zeile als Fehler an:

Sub Stückliste()

Dim oapp As Inventor.Application
Set oapp = ThisApplication
Dim odoc As Inventor.DrawingDocument
If oapp.ActiveDocument.DocumentType <> kDrawingDocumentObject Then
MsgBox "Funktion ist nur in Zeichnungen zulässig"
Exit Sub
End If
Set odoc = oapp.ActiveDocument
Dim oOptions As NameValueMap
Set oOptions = ThisApplication.TransientObjects.CreateNameValueMap
Dim oName, oStart, oTemplate, oFullFileName, oFileName, oXLSFileName As String
Dim oLength As String
oFullFileName = Mid(odoc.FullFileName, InStrRev(odoc.FullFileName, "\") + 1)
oLength = Len(oFullFileName)
oFileName = Left(oFullFileName, oLength - 4)
oXLSFileName = "D:\Testordner\Stücklisten" & oFileName
'oName = 01-Stückliste.Vorlage
oName = "01-Stückliste.Vorlage"
'oStart = Start- Zelle
oStart = "A5"
'oTemplate = D:\Testordner\Stücklisten\01-Stückliste.Vorlage.xls
oTemplate = " D:\Testordner\Stücklisten\01-Stückliste.Vorlage.xls "
Call oOptions.Add("TableName", oName)
Call oOptions.Add("StartingCell", oStart)
Call oOptions.Add("Template", oTemplate)
Call odoc.ActiveSheet.PartsLists.Item(1).Export(oXLSFileName, kMicrosoftExcel, oOptions) 'hier kommt der Fehler "Invalid procedure call or argument (Error 5)"


End Sub

------------------
Didi

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

noctis79
Mitglied
Konstrukteur/ CAD-Administrator


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

Beiträge: 164
Registriert: 07.10.2009

Inventor Pro 2017
Cideon Workspace

erstellt am: 09. Okt. 2011 20:08    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 Didikalle 10 Unities + Antwort hilfreich

Geb ich Dir Recht!
Dies passiert wenn keine Stückliste auf der Zeichnung vorhanden ist.


Weiterer Fehler:
Schau Dir mal die Zeile an:

Code:
oXLSFileName = "D:\Testordner\Stücklisten" & oFileName

Hier hast Du eine kleinen Fehler drin.
Richtig ist:
Code:
oXLSFileName = "D:\Testordner\Stücklisten\" & oFileName

P.s.
Zeilen die mit ' beginnen brauchst Du nicht zu ändern.
Diese enthalten nur Kommentare.

[Diese Nachricht wurde von noctis79 am 09. Okt. 2011 editiert.]

[Diese Nachricht wurde von noctis79 am 09. Okt. 2011 editiert.]

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

noctis79
Mitglied
Konstrukteur/ CAD-Administrator


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

Beiträge: 164
Registriert: 07.10.2009

Inventor Pro 2017
Cideon Workspace

erstellt am: 09. Okt. 2011 21:21    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 Didikalle 10 Unities + Antwort hilfreich

Probier dann den Code nochmal...

Code:
Sub export_BOM()

Dim oapp As Inventor.Application

Set oapp = ThisApplication

Dim odoc As Inventor.DrawingDocument

If oapp.ActiveDocument.DocumentType <> kDrawingDocumentObject Then
    MsgBox "Funktion ist nur in Zeichnungen zulässig"
    Exit Sub
End If

Set odoc = oapp.ActiveDocument

Dim oOptions As NameValueMap

Dim oName, oStart, oTemplate, oFullFileName, oFileName, oXLSFileName  As String
Dim oLength As String
Dim oFit As Boolean
Dim oProp As PropertySet
Dim i As Property
Dim oDescription As String
Dim oPartNumber As String

Set oProp = odoc.PropertySets.item("Design Tracking Properties")

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

oFileName = oPartNumber & "." & oDescription

Set oOptions = ThisApplication.TransientObjects.CreateNameValueMap


oXLSFileName = "C:\test\" & oFileName
'oName = Name des Excel- Sheets
oName = "test"
'oStart = Start- Zelle
oStart = "A5"
'oTemplate = Pfad zum xls- Template
oTemplate = "C:\template.test.xls"
'oFit bewirkt, dass die Zellen eingepasst werden
'true - Zellen werden angepasst
'false - Zellen werden nicht angepasst
oFit = True

Call oOptions.Add("TableName", oName)
Call oOptions.Add("StartingCell", oStart)
Call oOptions.Add("Template", oTemplate)
Call oOptions.Add("AutoFitColumnWidth", oFit)

If odoc.ActiveSheet.PartsLists.Count = 0 Then
    MsgBox "Keine Stückliste vorhanden!", vbCritical + vbOKOnly, "Stückliste fehlt"
    Exit Sub
ElseIf odoc.ActiveSheet.PartsLists.Count > 1 Then
    MsgBox "Es sind mehrere Stücklisten vorhanden!" & vbCrLf & "Es wird die erste Stückliste verwendet!" _
    , vbOKOnly + vbInformation, "Mehrere Stücklisten"
End If

Call odoc.ActiveSheet.PartsLists.item(1).Export(oXLSFileName, kMicrosoftExcel, oOptions)

'************************* Ab hier der EXCEL- PART ****************
'Im Inventor VBA- Projekt auf Extras - Verweise und
'die Microsoft Excel Library hinzufügen
'******************************************************************

Dim oExl As New Excel.Application

On Error Resume Next
Set oExl = GetObject(, "Excel.Application")
  If Err.Number Then
    Err.Clear
    On Error Resume Next
    Set oExl = CreateObject("Excel.Application")
    If Err.Number Then
      Err.Clear
      MsgBox "Kann Excel nicht öffnen."
    End If
  End If
 
oExl.Workbooks.Open (oXLSFileName)
With oExl.ActiveWorkbook
  .Sheets(oName).Cells(2, 1) = oPartNumber
  .Sheets(oName).Cells(2, 5) = oDescription
  .Close 1
End With

End Sub


Hausaufgabe für Dich:
Anpassen auf Deine Umgebung und den Code soweit verstehen.
Geh das Script wirklich mal Stück für Stück durch und versuch
zu verstehen was passiert.
Wenn Du Fragen  dazu hast ==> posten.

[Diese Nachricht wurde von noctis79 am 09. Okt. 2011 editiert.]

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

Didikalle
Mitglied
Konstrukteur


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

Beiträge: 91
Registriert: 07.10.2011

Ich nutze Inventor 2016 mit dem BS Win 10

erstellt am: 10. Okt. 2011 09:44    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 noctis79

das sieht ja schon super aus, aber das Makro bleibt bei mir immer an der selben Stelle hängen, sodass keine Liste in den Testordner geht:

Call odoc.ActiveSheet.PartsLists.Item(1).Export(oXLSFileName, kMicrosoftExcel, oOptions)

Auf der Zeichnung befindet sich eine Teileliste, ich habe auch eine 2. eingefügt und die Fehlermeldung kam dann auch prompt. Was kann da falsch sein?

Gruß

------------------
Didi

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

noctis79
Mitglied
Konstrukteur/ CAD-Administrator


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

Beiträge: 164
Registriert: 07.10.2009

Inventor Pro 2017
Cideon Workspace

erstellt am: 10. Okt. 2011 12:49    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 Didikalle 10 Unities + Antwort hilfreich

Dann scheinen die Herren beim 2012ér IV was geändert zu haben....
Geh mal in die Programmierungshilfe
(Im Inventor auf das ?, Weitere Ressourcen, Programmierungshilfe)
und gib dort unter suchen
partslist.export ein.
Dort sollte dann ein Titel mit
PartsList.Export Method auftauchen...

Kopier das bitte mal und schick´s mir durch...

[Diese Nachricht wurde von noctis79 am 10. Okt. 2011 editiert.]

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

Didikalle
Mitglied
Konstrukteur


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

Beiträge: 91
Registriert: 07.10.2011

Ich nutze Inventor 2016 mit dem BS Win 10

erstellt am: 10. Okt. 2011 17:44    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 noctis79
Hier das was ich finden konnte:

Summary
Property that returns the PartsLists collection object associated with this sheet. This provides access to the existing parts lists on the sheet.
Visual Basic
Property PartsLists() As PartsLists**
See Also
Parts List Edit sample
Parts List Query sample
You are here: Symbol Reference > Inventor Library > Objects > Sheet Interface > Sheet Properties > Sheet.PartsLists Property
Copyright (c) Autodesk Inc. 2011. All rights reserved.

Method that saves the parts list to an external file.
Visual Basic
Sub Export(FileName As String, FileFormat As PartsListFileFormatEnum, ByRef Options As [optional] VARIANT)
Parameters
Parameters Description
FileName Input string that specifies the file name to export the parts list to.
FileFormat Input that specifies the file format to save to.
Options Optional input String that specifies the 'Table Name' for kMicrosoftAccess and kMicrosoftExcel file formats. (LEGACY SUPPORT). Optional input NameValueMap object that specifies additional options for export. See Remarks for valid inputs.
Remarks
Valid inputs for Options parameter:
Name Value Type
Valid for export formats
TableName String kMicrosoftExcel, kMicrosoftAccess
ExportedColumns String containing semicolon separated column titles All
IncludeTitle Boolean kMicrosoftExcel, kTextFileCommaDelimited, kTextFileTabDelimited, kUnicodeTextFileCommaDelimited, kUnicodeTextFileTabDelimited
StartingCell String kMicrosoftExcel
Template String kMicrosoftExcel
AutoFitColumnWidth Boolean kMicrosoftExcel
You are here: Symbol Reference > Inventor Library > Objects > PartsList Interface > PartsList Methods > PartsList.Export Method

Ich habe das Makro auch mal in INV 2010 ausprobiert, hier kommt der gleiche Fehler.

Gruß

------------------
Didi

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

noctis79
Mitglied
Konstrukteur/ CAD-Administrator


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

Beiträge: 164
Registriert: 07.10.2009

Inventor Pro 2017
Cideon Workspace

erstellt am: 10. Okt. 2011 18:20    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 Didikalle 10 Unities + Antwort hilfreich

Füg mal bitte vor dem Fehler das noch ein:

Code:
Dim objFSO As FileSystemObject
Set objFSO = New FileSystemObject
If Not objFSO.FileExists(oTemplate) Then
    MsgBox "Template- Datei wurde nicht gefunden!", vbCritical + vbOKOnly, "Template"
    Exit Sub
End If

und erstell einen Verweis (wie oben schon beschrieben) auf das
Microsoft Scripting Runtime...
Hab so eine Ahnung....
Sollte der Fehler wieder auftauchen dann schau Dir nochmal die Zeile mit
oTemplate = ".....xls" an.
Bei Deinem post ist hinter dem xls noch ein Leerzeichen (Lehrzeichen)...
Das nimmt Dir das Prog auch übel!

[Diese Nachricht wurde von noctis79 am 10. Okt. 2011 editiert.]

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

Didikalle
Mitglied
Konstrukteur


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

Beiträge: 91
Registriert: 07.10.2011

Ich nutze Inventor 2016 mit dem BS Win 10

erstellt am: 10. Okt. 2011 18:28    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

Ich glaube deine Ahnung scheint sich zu bestätigen.
Es kommt die Fehlermeldung aus der MsgBox.
Gruß

------------------
Didi

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

noctis79
Mitglied
Konstrukteur/ CAD-Administrator


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

Beiträge: 164
Registriert: 07.10.2009

Inventor Pro 2017
Cideon Workspace

erstellt am: 10. Okt. 2011 19: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 Didikalle 10 Unities + Antwort hilfreich

Ah ja...
Dann stell das Ganze mal richtig und gib bitte kurze
Rückinfo ob alles funktioniert.

Thx!

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

Didikalle
Mitglied
Konstrukteur


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

Beiträge: 91
Registriert: 07.10.2011

Ich nutze Inventor 2016 mit dem BS Win 10

erstellt am: 10. Okt. 2011 19:47    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 noctis79,

ich habe deine letzte VBA komplett übernommen, auf meinem Rechner den Testordner eingerichtet, das template.test.xls hier rein gelegt, und das war mein Fehler. In deiner vba steht das template direkt auf C: und damit klappt es. Ich bin begeistert und gebe die volle Punktzahl.
Ein nächster Schritt ist die Geschichte mit der Revision, d.h. bei Änderung z.B. "A" brauche ich unter gleichem Dateinamen ein neues Tabellenblatt mit dem Namen "A" wo dann die neue, korrigierte Liste steht. Ich werde mich mit deiner Vorlage auch mal daran versucchen aber du wirst das warscheinlich schon gelöst haben bevor ich das getippt habe.

Liebe Grüße, Zehn Punkte und Daumen hoch

------------------
Didi

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

noctis79
Mitglied
Konstrukteur/ CAD-Administrator


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

Beiträge: 164
Registriert: 07.10.2009

Inventor Pro 2017
Cideon Workspace

erstellt am: 10. Okt. 2011 20: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 Nur für Didikalle 10 Unities + Antwort hilfreich

Da wünsch ich Dir viel Spaß...
Wo bekommst Du die Revision her?
Aus den iProperties?

Mein Lösungsansatz wäre hier folgender:
Prüfen ob xls- File existiert.
Wenn ja, export als template.xls
Öffnen der template.xls, kopieren des sheets mit der
Revision und das Ganze in die Original- Datei kopieren...

Wird ein Spaß!

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

Didikalle
Mitglied
Konstrukteur


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

Beiträge: 91
Registriert: 07.10.2011

Ich nutze Inventor 2016 mit dem BS Win 10

erstellt am: 11. Okt. 2011 08:32    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

Danke für die die Wünsche, denke aber, dass der Spaß auch schnell in Frust ausarten kann wenn es am Ende nicht klappt.
Die Revision bekomme ich aus den iproperties "Revision". Solltest Du Deinen Lösungsansatz, den ich für richtig halte, in vba umsetzen können, wäre ich Dir äusserst dankbar.

------------------
Didi

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

Didikalle
Mitglied
Konstrukteur


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

Beiträge: 91
Registriert: 07.10.2011

Ich nutze Inventor 2016 mit dem BS Win 10

erstellt am: 11. Okt. 2011 17:38    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 noctis79

Besteht hier die Möglichkeit auf die Revisionsnummer aus den iproperties zuzugreifen?
'oName = Name des Excel- Sheets
oName = "test" 
dann wird in Excel, glaube ich, immer eine neue sheet angelegt.
Freue mich auf Deine Hilfe.

Gruß

------------------
Didi

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

noctis79
Mitglied
Konstrukteur/ CAD-Administrator


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

Beiträge: 164
Registriert: 07.10.2009

Inventor Pro 2017
Cideon Workspace

erstellt am: 12. Okt. 2011 07:42    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 Didikalle 10 Unities + Antwort hilfreich

Schon getestet?
Beim 2011ér überschreibt er die kpl. Datei...

Code:
Dim oPropRev As PropertySet
Dim iRev As Property
Set oPropRev = odoc.PropertySets.item("Inventor Summary Information")

For Each iRev In oPropRev
    If iRev.DisplayName = "Revisionsnummer" Then
        If iRev.Expression = "" Then
            oName = "0"
        Else
        oName = iRev.Expression
        End If
    End If
Next



Ich geh mal davon aus Du meinst Revisionsnummer?!?
Die Zeile oName = .... löschen und den Code dafür einfügen.

[Diese Nachricht wurde von noctis79 am 12. Okt. 2011 editiert.]

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

Didikalle
Mitglied
Konstrukteur


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

Beiträge: 91
Registriert: 07.10.2011

Ich nutze Inventor 2016 mit dem BS Win 10

erstellt am: 12. Okt. 2011 09:41    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

    Ich bin begeistert
Hallo noctis79
Besten Dank, es funktioniert so wie ich mir das vorgestellt habe. 

Gruß

------------------
Didi

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

Didikalle
Mitglied
Konstrukteur


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

Beiträge: 91
Registriert: 07.10.2011

Ich nutze Inventor 2016 mit dem BS Win 10

erstellt am: 23. Dez. 2011 19:21    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

Frage an noctis79.

Wenn ich eine Stückliste an Excel übergebe und diese ist vorhanden, bekomme ich ein Fehler (Debug). Wie muss ich die Formel ergänzen, dass ich gefragt werde, ob überschrieben werden soll oder ich den Vorgang abbrechen will? Für eine Lösung wäre ich dankbar.

Liebe Grüße und schon mal ein schönes Fest

------------------
Didi

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

noctis79
Mitglied
Konstrukteur/ CAD-Administrator


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

Beiträge: 164
Registriert: 07.10.2009

Inventor Pro 2017
Cideon Workspace

erstellt am: 08. Jan. 2012 20:03    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 Didikalle 10 Unities + Antwort hilfreich

Sorry... Hatte Urlaub ^^

Puh, ist schon wieder ne ganze Zeit her...
Soll die kpl. Excel- Datei überschrieben werden oder nur ein bestimmtes Blatt?

Bin ab morgen wieder im Einsatz...

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

Didikalle
Mitglied
Konstrukteur


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

Beiträge: 91
Registriert: 07.10.2011

Ich nutze Inventor 2016 mit dem BS Win 10

erstellt am: 08. Jan. 2012 20:19    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 noctis79

ich hoffe der Urlaub hat sich gelohn und Du bist wieder fit für neue Taten. Ich habe das Problem mit Hilfe eines Kollegen aus diesem Pool lösen können (siehe "Tabellenblatt in Excelliste überschreiben"). Sollten von Deiner Seite Verbesserungen erkannt werden - einfach sagen.
Ich habe da aber noch ein Anliegen: Bei den teuren PSP-Systemen gibt es die Möglichkeit, im Browser einer IAM die Teile mit Displayname und Title zu versehen (übersichtlicher, besser erkennbar). Gibt es die Möglichkeit, das über VBA zu realisieren?

Gruß

------------------
Didi

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

noctis79
Mitglied
Konstrukteur/ CAD-Administrator


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

Beiträge: 164
Registriert: 07.10.2009

Inventor Pro 2017
Cideon Workspace

erstellt am: 09. Jan. 2012 14:52    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 Didikalle 10 Unities + Antwort hilfreich

Jupp,
die Möglichkeit gibts.
Greift allerdings schon bei Bauteilen...
D.h. beim Speichern von Bauteilen wird der "Display- Name" schon aktualisert und dementsprechend im Bauteil sowie der Baugruppe angezeigt...

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

Didikalle
Mitglied
Konstrukteur


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

Beiträge: 91
Registriert: 07.10.2011

Ich nutze Inventor 2016 mit dem BS Win 10

erstellt am: 09. Jan. 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

Hi,

ich glaube wir sollten diesen Tread schliessen und für dieses Problem ein neues Thema öffnen. vielleicht "Teilename im Browser ändern".

Gruß

------------------
Didi

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