Autor
|
Thema: Bauteilname aus Catia in Excel einfügen (894 mal gelesen)
|
mwrede Mitglied Student
Beiträge: 4 Registriert: 19.11.2015 Catia V5, Windows 7
|
erstellt am: 19. Nov. 2015 12:14 <-- editieren / zitieren --> Unities abgeben:
Hallo, ich bin sowohl neu hier im Forum, als auch in der Programmierung von Catia. Ich suche eine Lösung, wie ich aus Catia den Bauteilnamen in eine vorhandene Excel Tabelle einfügen kann. Ich hatte versucht mir das ganze mit dem Makrorekorder aufzeichnen zu lassen, aber der hat mir gar nichts aufgezeichnet. (Muss ich vielleicht Einstellungen anpassen?) Also im Prinzip sollte das folgendermaßen aussehen: Dateinamen kopieren Excel Datei öffnen Einfügen des Namens in A1 speichern unter dem Namen in A1 Dokument schließen Hat da jemand ne Idee, hab auch nicht so richtig ein Code, komme hier nicht so wirklich weiter. Würde mich über jede Hilfe freuen! Beste Grüße Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
joehz Moderator Freiberuflicher Konstrukteur
Beiträge: 1057 Registriert: 25.11.2006 Win7 Pro 64 + Ubuntu + Irix6.5.20 Dell Precision M6600 i7-2960XM 2.7GHz 16GB NVidia Quadro M5010 Catia V5R19 VB6Pro.SP6/VBA 6.5.1053
|
erstellt am: 19. Nov. 2015 12:52 <-- editieren / zitieren --> Unities abgeben: Nur für mwrede
|
mwrede Mitglied Student
Beiträge: 4 Registriert: 19.11.2015 Catia V5, Windows 7
|
erstellt am: 19. Nov. 2015 12:58 <-- editieren / zitieren --> Unities abgeben:
Ja so ungefähr, nur ich habe ja kein Product auf, sondern nur ein Part. Kann ich dadurch die Schleife nicht einfach weglassen? Ich versuche das mal auf mein Problem zu beziehen, aber steige da nicht so ganz durch. Mal gucken, danke schon mal! [Diese Nachricht wurde von mwrede am 19. Nov. 2015 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
joehz Moderator Freiberuflicher Konstrukteur
Beiträge: 1057 Registriert: 25.11.2006 Win7 Pro 64 + Ubuntu + Irix6.5.20 Dell Precision M6600 i7-2960XM 2.7GHz 16GB NVidia Quadro M5010 Catia V5R19 VB6Pro.SP6/VBA 6.5.1053
|
erstellt am: 19. Nov. 2015 13:33 <-- editieren / zitieren --> Unities abgeben: Nur für mwrede
|
SteelNinja Mitglied Student - Maschinenbau
Beiträge: 9 Registriert: 03.02.2016 Catia V5R18 Catia V5R21 Catia V5R25
|
erstellt am: 03. Feb. 2016 10:07 <-- editieren / zitieren --> Unities abgeben: Nur für mwrede
Hallo, Ich habe ein Problem, dass ich aus einer Auswahl die PartNamen in eine Excel Tabelle bringen will. Wollte das ganze unter CATVBA machen. Die Suche bzw. das verlinkte Thema oben haben mir nicht so wirklich weitergeholfen... Sub CATMain() 'Create a new Excel document Set excel1 = CreateObject("Excel.Application") excel1.Visible = True Set newwb = excel1.Workbooks.Add Set curwb = excel1.Workbooks.Item(1) Set sheet1 = curwb.Sheets.Item(1) 'Generating an automated header Hab des der Übersichtlichkeit halber rausgelöscht. 'Insert Tubes in Header Set selection1 = CATIA.ActiveDocument.Selection 'Selektion dem aktiven Dokument zuweisen selection1.Search "Type=Part & Name=*Flextube*,all" 'Alle Tubes suchen For i = 1 To selection1.Count 'Schleife um die Tube-Namen in den Header zu bekommen sheet1.Cells(5, i + 1).Value = selection1.Item(i).Name sheet1.Cells(5, i + 1).Font.Bold = True Next Mit dem oben genannten ".Name" komm ich leider nicht ganz zum gewünschten Ziel. Er wirft mir für jedes Teil "CATIASelectedElement0" mit aufzählender Nummer aus. Wenn ich einfach ".PartNumber" oder ähnliches mache, kommt immer eine Fehlermeldung. Kann mir da jemand weiterhelfen? Grüße Patrick Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
joehz Moderator Freiberuflicher Konstrukteur
Beiträge: 1057 Registriert: 25.11.2006 Win7 Pro 64 + Ubuntu + Irix6.5.20 Dell Precision M6600 i7-2960XM 2.7GHz 16GB NVidia Quadro M5010 Catia V5R19 VB6Pro.SP6/VBA 6.5.1053
|
erstellt am: 03. Feb. 2016 12:47 <-- editieren / zitieren --> Unities abgeben: Nur für mwrede
|
SteelNinja Mitglied Student - Maschinenbau
Beiträge: 9 Registriert: 03.02.2016 Catia V5R18 Catia V5R21 Catia V5R25
|
erstellt am: 03. Feb. 2016 13:48 <-- editieren / zitieren --> Unities abgeben: Nur für mwrede
Hey Joe, Danke für die schnelle Rückmeldung. Leider hat das so nicht ganz funktioniert. Wenn ich die Zeile direkt übernehme, bekomme ich einen Runtime-Fehler: 1004 Application-defined or object defined error. Hab dann mal folgendes versucht: Dim Element As Object Set Element = selection1.Item(I).Value sheet1.Cells(5, I + 1).Value = Element Führt aber zu einem Runtime-Fehler: 424 Object required. Zwischen dem .Item(i) und .Item2(i) konnte ich keine Unterschiede feststellen. Leider fehlt mir für so eine detaillierte Fehlersuche dann doch die Erfahrung... Grüße Patrick Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
joehz Moderator Freiberuflicher Konstrukteur
Beiträge: 1057 Registriert: 25.11.2006 Win7 Pro 64 + Ubuntu + Irix6.5.20 Dell Precision M6600 i7-2960XM 2.7GHz 16GB NVidia Quadro M5010 Catia V5R19 VB6Pro.SP6/VBA 6.5.1053
|
erstellt am: 03. Feb. 2016 14:06 <-- editieren / zitieren --> Unities abgeben: Nur für mwrede
Hi Ninja, lass uns erstmal grundsätzliches klären: In welcher Umgebung programmierst Du? VBA oder Catscript? Unter VBA hast Du die Möglichkeit die Online-Hilfe aufzurufen. Dort würdest Du für Selection.Item/2 finden: Zitat:
o Func Item( long iIndex) As CATIASelectedElement Deprecated: V5R16 #Item2 . The Count and Item Methods have been replaced by the Count2 and Item2 methods because they did not process correctly features which are not exposed to automation (such as a ResourcesList feature of a .CATProcess document). o Func Item2( long iIndex) As CATIASelectedElement Returns the iIndex-th SelectedElement object contained by the current selection. Role: Returns the iIndex-th SelectedElement object contained by the current Selection. The Value property of the SelectedElement object is an automation object associated to a selected feature. . . .
Für Selection.Count/Count2 gilt dasselbe. Zum Thema: sheet1.Cells(5, i + 1).Value = selection1.Item2(i).Value.Name sollte funktionieren. Tschau, Joe
------------------ Inoffizielle Catia Hilfeseite Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
SteelNinja Mitglied Student - Maschinenbau
Beiträge: 9 Registriert: 03.02.2016 Catia V5R18 Catia V5R21 Catia V5R25
|
erstellt am: 03. Feb. 2016 14:26 <-- editieren / zitieren --> Unities abgeben: Nur für mwrede
Hey, Mach des ganze in VBA, hab ich oben glaub auch erwähnt Hab meinen Fehler durch deinen letzten Codeschnipsel aber jetzt gefunden. Hab immer nur .Value oder .Name einzeln benutzt. Beides zusammen funktioniert^^ Manchmal steht man echt aufm Schlauch... Und er schmeißt des ganze auch mit Item(i) aus. Nehm in dem Fall aber trotzdem Item2(i). Dank dir für deine Hilfe. Grüße Patrick Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Duales Studium Master of science internationales Wirtschaftsingenieurwesen (m/w/d) | Die TK Fahrtreppen GmbH entwickelt, produziert und vertreibt mit einer Belegschaft von rund 400 Mitarbeitenden Fahrtreppen und Fahrsteige für den privaten und öffentlichen Bereich. Als Komplettanbieter im Premiumbereich liefert das Unternehmen weltweit anspruchsvolle Verkehrs- und Kaufhausanlagen.
Spannende und vielseitige Kombination aus Technik und Betriebswirtschaft.... | Anzeige ansehen | Wirtschaftsingenieur |
|
joehz Moderator Freiberuflicher Konstrukteur
Beiträge: 1057 Registriert: 25.11.2006 Win7 Pro 64 + Ubuntu + Irix6.5.20 Dell Precision M6600 i7-2960XM 2.7GHz 16GB NVidia Quadro M5010 Catia V5R19 VB6Pro.SP6/VBA 6.5.1053
|
erstellt am: 03. Feb. 2016 14:44 <-- editieren / zitieren --> Unities abgeben: Nur für mwrede
|