Hallo,
ich möchte aus einer Produktstruktur mit Unterprodukten und Parts z.B. die "Part Number von jedem Produkt und Bauteil in eine Excel-Tabelle schreiben. Das soll direkt aus Catia (CATScript)funktionieren. Ich habe auch eine rekursive Funktion erstellt. Weiß aber nicht, wie ich die Daten aus der Funktion nach Excel bekommen soll. Mit V5 und Excel habe ich noch nicht viel programmiert. Anbei mein Beispiel-Code:
Sub CATMain()
Set meinDokument = CATIA.ActiveDocument
'+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++'
excel_datei = "H:\CAD\Makro\Projekt_Parameter_to_Excel\Test.xls"
Set objExcel = createObject ("Excel.Application")
objExcel.Application.Visible=true
Set workbook = objExcel.Workbooks.Open (excel_datei)
Set worksheet = workbook.activeSheet
'+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++'
'***Überschrift eintragen
objExcel.Cells(1, 1).Value = "Part Number"
'***Schriftart: Fett
objExcel.Cells(1, 1).Font.Bold = True
'***Schriftfarbe: Rot
objExcel.Cells(1, 1).Font.Color = -16776961
'***Schriftgröße: 16
objExcel.Cells(1, 1).Font.Size = 16
'***Schrifttyp: Kursiv
objExcel.Cells(1, 1).Font.Italic = True
'***Überschrift unterstreichen
'objExcel.Cells(1, 1).Font.Underline = xlUnderlineStyleSingle
'***Zellen verbinden
objExcel.Range("A1:B1").MergeCells = True
'***Zellenausrichtung Horizontal
' objExcel.Range("A1:B1").HorizontalAlignment = xlCenter
'***Zellenausrichtung Vertikal
'objExcel.Range("A1:B1").VerticalAlignment = xlBottom
'***Spaltenbreite
objExcel.Columns("A:A").ColumnWidth = 32
'objExcel.Cells(2, 1).Value = "Test"
'*************************************************************************'
Set produkt = meinDokument.Product
PartNameToExcel (produkt)
End Sub
'Rekursive durch die Productstruktur und alle PartNumber anzeigen.'
Sub PartNameToExcel (Part_Name As Product)
MsgBox (Part_Name.PartNumber)
Dim PP As Product
Dim I As Integer
Set PP = Part_Name.Products
I = 0
Do While I < PP.Count
I=I + 1
PartNameToExcel (PP.Item(I))
Loop
End Sub
Vielleicht hat jemand einen Tipp? Habe auch schon im Forum geguckt, aber kein entsprechendes Beispiel gefunden.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP