none
Excel 64-Bit RRS feed

  • Frage

  • Hallo,

    ich habe einen VBA-Code, der in allen Excel-32-Bit-Versionen problemlos läuft, aber in der Excel 2013-64-Bit-Version Abstürze erzeugt. Nun habe ich das MS-Programm "Office Code Compatibility Inspector (OCCI)" geladen und getestet. Diese meldet mir 246 Probleme in meinem rund 800 Zeilen langen VBA-Code.

    Die einzelnen Probleme werden wie folgt gekennzeichnet:

    Die Zeile "CODE:" entspricht der der Codezeile/Line 58, meines Original-Codes.

    MODULE: DieseArbeitsmappe
    FUNCTION: workbook_open
    LINE: 58
    TYPE: CHANGE
    ITEM: [xls]ChartArea.ClearContents
    URL: http://go.microsoft.com/fwlink/?LinkID=215357
    CODE: .[license].clearcontents​

    Können Sie mir da evtl. helfen, denn ich weiß nicht, was an dieser Code-Zeile falsch ist?

    Für Ihre Bemühungen bedanke ich mich und verbleibe

    mit freundlichen Grüßen

    Herbert Grom


    Gruß Herbert

    Freitag, 9. März 2018 12:40

Alle Antworten

  • Hallo Herbert :-)

    solange Du keine Windows API-Funktionen oder externe, reine 32-Bit-Bibliotheken verwendest, sollte es m.W. eigentlich keine Probleme in 64 Bit Excel geben. Wie aktuell noch OCCI ist, kann ich Dir nicht sagen. Könntest Du denn eine anonymisierte Beispielmappe hier hochladen, wo z.B. der relevante abstürzende Code drin ist?

    Gruß


    Microsoft Excel MVP · excel-translator.de · excel-ticker.de · excel-soccer.de

    Samstag, 10. März 2018 08:27
  • Hallo Mourad,

    vielen Dank für Deine Nachricht. Ich habe Dir mal den OCCI-Report per eMail gesandt, da man hier ja nix hochladen kann. Jedenfalls habe ich nix gefunden.

    Servus


    Gruß Herbert

    Montag, 12. März 2018 09:58
  • Hallo Matthias,

    vielen Dank für Deine Infos. Und was bedeuten die "DEPRECATION" und die "REMOVED" Einträge?

    Servus


    Gruß Herbert

    Montag, 12. März 2018 10:54
  • Alles zu weit gegriffen:

    Bei 64-Bit-VBA gibt es ins besonders bei der Verwendung von DLL-Funktionen (declare) nicht mehr den Typ "long" sondern den neuen Typ "longlong", da Long ein 32-Bit-Wert ist und die 64-Bit-Funktionen nun aber 64-Bit-Integers erwarten.
    Die Verwendung von longlong schließt die Weiterverwendung als 32-Bit dann allerdings aus, hier brauchst du dann 2 Varianten.

    Untersuche deinen Code darauf.

    Desweiteren kann es auch sein, dass externe Verweise (COM-Schnittstellen) in 64-Bit nicht existieren.
    Prüfe daher über das Menü "Extras->Verweise", was da halt fehlt.
    Das gilt ebenso für die Anweisung CreateObject, da nicht alles was es für 32-Bit gibt eben auch für 64-Bit verfügbar ist.

    Montag, 12. März 2018 16:28
  • Hallo an Alle,

    wir haben uns entschlossen, das Thema "Excel 64-Bit" ad Acta zu legen. Vielen Dank für Euere Unterstützung!

    Servus


    Gruß Herbert

    Dienstag, 13. März 2018 09:02