Suchergebnisse

Suchergebnisse 1-5 von insgesamt 5.

  • Benutzer-Avatarbild

    Hi Jupp, Deine API Deklaration ist nicht korrekt. Zum einen, alle Long (VBA, VB6) werden in .NET zu Integer. paccContainer würde ich entsprechend für ein Interface marshallen "MarshalAs(UnmanagedType.Interface)". rgvarChildren ist ein Pointer auf ein Array der Structure VARIANT, nicht verwechseln mit dem Datentyp Variant in VBC oder VBA. Den müsste man ebenfalls entsprechend marshallen. ​ [out] rgvarChildren Type: VARIANT* [b]Pointer to an array of VARIANT structures[/b] that receives informatio…

  • Benutzer-Avatarbild

    Hi Ich komm gerade nicht dazu da was zu testen. Im dritten Parameter der API müsste einfach ein ObjectArray in der Größe von cChildren - 1 übergeben werden. Im letzten Parameter wird ein Wert in eine Variable geschrieben und nicht festgelegt. Wenn die API = S_Ok zurück gibt, dann sollte im ObjectArray, laut MSDN, entweder ein Wert (VT_I4) sein oder ein Interface (VT_Dispatch) sein. Dein Imports Accessibility dürfte auch nicht richtig sein. Wenn dann den von Imports Microsoft.Office.Core.

  • Benutzer-Avatarbild

    Hi Hatte mal ein wenig Zeit da was zu testen. Funktioniert zumindest mit meiner Excelversion. (Versteckter Text)

  • Benutzer-Avatarbild

    Zitat von 1978lazigo: „Die Variable ExcelApp sollte als Object deklariert und den Wert "Nothing" zugewiesen werden, um den Fehler beim Testen zu vermeiden, wenn Excel nicht gestartet ist. Nicht vergessen! "Option Strict On" auszukommentieren. "Option Strict On" lässt kein spätes Binden zu. Der Block würde dann so aussehen.“ Das eine schlechte Idee "Option Strict On" auszukommentieren. Ersetze "Dim ExcelApp As Object = Nothing" durch "Dim ExcelApp As Excel.Application = Nothing" und dann musst "O…

  • Benutzer-Avatarbild

    Hi Ich kann da wenig zu beitragen da ich mich mit den ganzen Officezeug noch nie beschäftigt habe. Was ich aber vermeide, wenn es irgendwie geht, einen Try/Catch-Block zu verwenden. In Deinem Fall würde ich mal schauen ob die verwendete Office Version eine 32 oder 64bit Version ist und dann den entsprechenden Zweig aufrufen. Irgendwie wird sich das ja auslesen lassen. Zitat von 1978lazigo: „Obwohl das Programm mit Excel 2016 32bit fehlerfrei gelaufen ist, verursachte mit Excel 2019 32bit Fehler“…