Hallo Harald,
genau das hätte ich Dir auch vorgeschlagen, konnte ich mit meinem Handy aber nicht....
Ich selbst nehme (aber das ist optional) dieses hier:
#If VBA7 Or Win64 Then
Zur Erklärung:
Für 64 Bit werden andere Datentypen und das Schlüsselwort PtrSafe verwendet, die vom alten Windows bzw. Excel nicht verwendet werden können und umgekehrt.
Excel 32 Bit unter Windows 64 kann sowohl mit den alten Datentypen als auch mit den neuen Datentypen umgehen.
Innerhalb der Excelversionen ist alles geregelt und ok. Sobald Du aber auf die API-Ebene wechselst, also Funktionen des Betriebssystems Windows verwenden willst, müssen die Funktionen vorher deklariert wedren und hier ist dann der Datentyp einzuhalten.
Mit den Compilerschaltern #IF kann zwischen VBA6 und VBA7 und zwischen Win32 und Win64 umgeschlatet werden, so dass Dein Code auf allen Betriebsystemen läuft.
Viel Erfolg noch
Karl-Heinz
|