Autor
|
Thema: Excel Export -> Zahlenformat ändert sich? (396 / mal gelesen)
|
jeti79 Mitglied
Beiträge: 22 Registriert: 30.11.2009 Catia Version 5-6 Rel2020 SP3, Built30 HF 32 Excel 365
|
erstellt am: 05. Apr. 2023 10:08 <-- editieren / zitieren --> Unities abgeben:
Hallo zusammen, ich bin recht unerfahren, was die Programmierung in Catia Macros angeht. Ich habe Anhand einiger Codebeispiele ein Makro geschrieben, welches erfolgreich die CoG-Daten in eine Excel Datei schreibt. Was mir dabei auffällt ist, dass die Werte abweichen, von dem, was ich z.B. mit einer MessageBox direkt in Catia ausgegeben bekomme. Ich habe schon einige Formattierfunktionen ausprobiert. Das Problem scheint aber, dass das Komma nicht richtig übernommen wird!? Könnt Ihr mir helfen, wie ich die Koordinaten richtig ins Excel bekomme? (Also, wie in der MessageBox dargestellt) Ich habe im Moment Folgendes getestet: Code: ... Set oInertia = P.GetTechnologicalObject("Inertia") On Error resume next oInertia.GetCOGPosition oCoordinates if cstr(oCoordinates(0))<>"" then objXL.Cells(1+x,1).Value = P.PartNumber objXL.Cells(1+x,2).Value = P.Name objXL.Cells(1+x,3).Value = oCoordinates(0) objXL.Cells(1+x,4).Value = oCoordinates(1) objXL.Cells(1+x,5).Value = oCoordinates(2) objXL.Cells(1+x,6).Value = cstr(round(oCoordinates(0)*1000 , 3)) objXL.Cells(1+x,7).Value = cstr(round(oCoordinates(1)*1000 , 3)) objXL.Cells(1+x,8).Value = cstr(round(oCoordinates(2)*1000 , 3)) x=x+1 end if ...
Beide Varianten sind auf dem Screenshot zu sehen -> Allerdings liefern beide nicht die scheinbar richtige Darstellung, wie in der MessageBox: Code: msgbox(cstr(round(oCoordinates(0)*1000 , 3))& "|" & cstr(round(oCoordinates(1)*1000 , 3))& "|" & cstr(round(oCoordinates(2)*1000 , 3)))
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
bgrittmann Moderator Konstrukteur
Beiträge: 11792 Registriert: 30.11.2006 CATIA V5R19
|
erstellt am: 05. Apr. 2023 12:47 <-- editieren / zitieren --> Unities abgeben: Nur für jeti79
Servus Lass mal testweise das CStr beim Einfügen der Werte in Excel weg, damit sich Excel darum kümmert den Wert richtig darzustellen (und nicht zuerst versuchen muss den String in eine Zahl zu konvertieren) Gruß Bernd ------------------ Warum einfach, wenn es auch kompliziert geht. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
jeti79 Mitglied
Beiträge: 22 Registriert: 30.11.2009 Catia Version 5-6 Rel2020 SP3, Built30 HF 32 Excel 365
|
erstellt am: 06. Apr. 2023 02:25 <-- editieren / zitieren --> Unities abgeben:
Danke für Deinen Tipp, Ich habe es anscheinend damit hinbekommen, dass ich das Ergebnis einfach nur x1000 genommen habe. Damit wird es zwar nicht gerundet, aber das kann ich in der weiteren Verarbeitung machen. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|