Charly ich habe es nicht hinbekommen die Benutzerparameter der Baugruppe in der Stückliste anzuzeigen, lediglich von Bauteilen klappt das über "benutzerdefinierte iProperty-Spalten". Habe bei meiner Suche leider nichts hilfreiches gefunden.
Canadabear der absolute Pfad kann eingegeben werden. Ich habe jetzt auch herausgefunden, warum mein Beispiel unter 2) nicht funktionierte. Das löst nunmein Problem mit dem relativen Pfad. So muss es lauten:
GoExcel.CellValue(ThisDoc.WorkspacePath()+"\Stuecklisten\Paket\Stückliste.Hybrid.Inventor.iLogic.xlsm", "Stückliste", "A3") = "Code:"
Statt dem "+" kann auch ein "&" verwendet werden
Habe es nun zufriedenstellend mit iLogic aus der IDW heraus gelöst. Mit der ersten Regel werden die Werte aller nötigen Benutzerparameter aus der zugehörigen IAM in zuvor angelegte Benutzer iProperties der IDW geschrieben. Ebenfalls werden die Zusatzinformationen für die Zeichnung als Benutzer iProperties in der IDW angelegt. Die erstellte Tabelle mit den Benutzer IProperties als Textfelder ist somit auch automatisch aktualisiert (s. Anhang).
Mit einer zweiten Regel werden alle IDW Benutzer iProperties mit einer vorgeschalteten GoExcel.FindRow-Abfrage (Suche nach der Förderband-Nummer) in die Übersichtstabelle (Excel) geschrieben. Die Exceltabelle muss vorher angelegt werden (s. Anhang). Hierbei ist zu beachten, dass man keine Leerzeilen in der Spalte der FindRow-Suche hat - ich habe es mit einem kleinen Punkt verhindert
1. Regel:
iProperties.Value("Custom", "Breite_BG")=Parameter(ThisDoc.FileName(False)&".iam.Breite_BG")
iProperties.Value("Custom", "Länge_BG")=Parameter(ThisDoc.FileName(False)&".iam.Länge_BG")
2. Regel
Datei=ThisDoc.WorkspacePath()&"\Förderaggregate\01 Bänder\Förderbänder Übersicht.xlsx"
GoExcel.TitleRow = 4
GoExcel.FindRowStart = 6
i = GoExcel.FindRow(Datei, "Sheet1", "Parameter", "=", "Band "&Parameter(ThisDoc.FileName(False)&".iam.AKZ"))'without extension
GoExcel.CellValue(Datei, "Sheet1", "C"&(i+1))=iProperties.Value("Custom", "Breite_BG")&" mm"
GoExcel.CellValue(Datei, "Sheet1", "C"&(i+2))=iProperties.Value("Custom", "Länge_BG")&" mm"
GoExcel.CellValue(Datei, "Sheet1", "C"&(i+3))=iProperties.Value("Custom", "Geschwindigkeit")
GoExcel.CellValue(Datei, "Sheet1", "C"&(i+4))=iProperties.Value("Custom", "Material")
GoExcel.Save
Gruß,
Tobias
[Diese Nachricht wurde von HERUsai am 30. Mai. 2016 editiert.]
[Diese Nachricht wurde von HERUsai am 30. Mai. 2016 editiert.]
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP