Koden virker 100%, fejlen kommer først efter fuldendt macro. :/ Kan der være noget i koden, eller kan det være programmet som ikke vil acceptere koden?
' Import Private Declare Function GetCurrentThreadId Lib "kernel32" () As Long
Private Declare Function SetDlgItemText Lib "user32" _ Alias "SetDlgItemTextA" _ (ByVal hDlg As Long, _ ByVal nIDDlgItem As Long, _ ByVal lpString As String) As Long
Private Declare Function SetWindowsHookEx Lib "user32" _ Alias "SetWindowsHookExA" _ (ByVal idHook As Long, _ ByVal lpfn As Long, _ ByVal hmod As Long, _ ByVal dwThreadId As Long) As Long
Private Declare Function UnhookWindowsHookEx Lib "user32" _ (ByVal hHook As Long) As Long
' Handle to the Hook procedure Private hHook As Long
Ja jeg syntes lige den var smart til det jeg skulle bruge i min Macro. :)
men den vil ikke godkende følgende linjer, den melder fejlen på PtrSafe. :/
Private Declare PtrSafe Function GetCurrentThreadId Lib "kernel32" () As LongPtr Private Declare PtrSafe Function SetDlgItemText Lib "user32" Alias "SetDlgItemTextA" (ByVal hDlg As LongPtr, ByVal nIDDlgItem As LongPtr, ByVal lpString As String) As LongPtr Private Declare PtrSafe Function SetWindowsHookEx Lib "user32" Alias "SetWindowsHookExA" (ByVal idHook As LongPtr, ByVal lpfn As LongPtr, ByVal hmod As LongPtr, ByVal dwThreadId As LongPtr) As LongPtr Private Declare PtrSafe Function UnhookWindowsHookEx Lib "user32" (ByVal hHook As LongPtr) As LongPtr #Else
Du skal blot kopiere modulet med koden over i dit eget project, og så blot kalde funktionen i dine egne makroer... ...forsøger du at tage dele af koden, og indbygge den i dine egne koder, går det galt!
Flyt hele modulet med koden over i dit eget projekt!
Jeg kopier det hele, godt nok i 3 bider, ellers kopier jeg linjetal med over fandt jeg ud af. Og nej, jeg har intet lavet om i den. Det er ikke Excel jeg bruger, det er et gammelt DOS baseret program jeg bruger på arbejde som anvender VBA til macroer. Noget som gør min hverdag lidt bedre. ;)
Okey - så er vi jo ved at spore os ind på problemet :-)
Så er det jo ikke VBA, du benytter, men VBScript - og, det er ikke helt det samme... Hvis du downloader Excel filen, og prøver, at køre makroen i Excel, vil det bestemt virke...
Jeg er desværre ikke så skarp til VBScript, men jeg jeg mindes, at det er ren 32-bit, og derfor skal du fjerne alt, hvad der indeholder:
- PtrSafe - LongPtr - #If...#Else... #EndIf
Måske osse noget mere, men i hvert fald sørge for at koden er ren 32-bit.
Se der lærte jeg også lige noget. :) De ligner jo hinanden til forveksling. :)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.