Schaue mir erst jetzt Deine Systeminfo an. :-)
Hätte uns viel Grübeln erspart, aber naja man lernt ja.
Wollte nämlich gerade schreiben, dass Du dann nen 64bit Rechner hast, aber das steht ja auch in der Sysinfo :-D
Dann zur Begründung:
Ist bei mir schon länger eine Programmierrichtlinie, vor jedem Methodenaufruf Call zu schreiben, wenn ich keine Rückgabewerte erwarte.
Dies ist bei 64bit manchmal nötig, da die Skriptbibo von CATIA nicht nur COM sondern auch 32bit ist.
Das ist der Architektur geschuldet. Aus diesem Grund muss ein Makro aber auch zur Laufzeit auf einem 64bit Rechner in einem externen Prozess umgewandelt werden und kommuniziert nun extern statt wie bisher intern.
Dort verhaspelt sich VBA gern bei Übergabeparametern, von Methoden, die vorher noch nicht eindeutig bekannt waren. Call lößt dieses Problem, da es eine eindeutige Anweisung ist - frag nicht warum - und schadet in normalen Code auch nicht. :-D
Daher unterstelle ich: Dein Makro müsste ohne Call noch immer unter 32bit Windows laufen.
------------------
Mit freundlichen Grüßen,
Henry Schneider
alias Lila
Es gibt einen ewigen Wettkampf zwischen der Natur und den Ingenieuren:
Die Ingenieure versuchen, immer idioten-sicherere Systeme zu bauen,
die Natur versucht, immer bessere Idioten zu bauen
Xing
[Diese Nachricht wurde von HoBLila am 16. Jun. 2011 editiert.]
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP