Bonjour à tous,
Voici le code que j'utilisais et qui fonctionnait sur les postes en Windows 32 Bits (code que je n'ai pas créé, mais trouvé sur internet ). Ce code a pour but de stopper momentanément ma macro le temps de traiter mon batch SQL.
Ma macro a été déplacée par sur un serveur 64 Bits et j'ai ce message d'erreur :
Microsoft Visual Basic for Applications : Compile error in hidden Module. This error commonly occurs when code is incompatible with the version, platform, or architecture of this application.
J'ai cherché sur internet pour contourner ce problème mais rien de concluant pour le moment.
Macro fonctionnant sur un poste en Windows 32 Bits :
Declare Function WaitForSingleObject Lib "kernel32" _
(ByVal hHandle As Long, ByVal dwMilliseconds As Long) As Long
Declare Function CloseHandle Lib "kernel32" _
(ByVal hObject As Long) As Long
Declare Function OpenProcess Lib "kernel32" _
(ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, _
ByVal dwProcessId As Long) As Long
Const INFINITE = -1&
Const SYNCHRONIZE = &H100000
Sub Lancement_Batch()
Dim iTask As Long, ret As Long, pHandle As Long
iTask = Shell(Chemin_Script_DPI, vbNormalFocus)
pHandle = OpenProcess(SYNCHRONIZE, False, iTask)
ret = WaitForSingleObject(pHandle, INFINITE)
ret = CloseHandle(pHandle)
End Sub
Est ce que quelqu'un peut m'aider a faire fonctionner la temporisation sur un Windows 7 en 64 bits ?
Voici le code que j'utilisais et qui fonctionnait sur les postes en Windows 32 Bits (code que je n'ai pas créé, mais trouvé sur internet ). Ce code a pour but de stopper momentanément ma macro le temps de traiter mon batch SQL.
Ma macro a été déplacée par sur un serveur 64 Bits et j'ai ce message d'erreur :
Microsoft Visual Basic for Applications : Compile error in hidden Module. This error commonly occurs when code is incompatible with the version, platform, or architecture of this application.
J'ai cherché sur internet pour contourner ce problème mais rien de concluant pour le moment.
Macro fonctionnant sur un poste en Windows 32 Bits :
Declare Function WaitForSingleObject Lib "kernel32" _
(ByVal hHandle As Long, ByVal dwMilliseconds As Long) As Long
Declare Function CloseHandle Lib "kernel32" _
(ByVal hObject As Long) As Long
Declare Function OpenProcess Lib "kernel32" _
(ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, _
ByVal dwProcessId As Long) As Long
Const INFINITE = -1&
Const SYNCHRONIZE = &H100000
Sub Lancement_Batch()
Dim iTask As Long, ret As Long, pHandle As Long
iTask = Shell(Chemin_Script_DPI, vbNormalFocus)
pHandle = OpenProcess(SYNCHRONIZE, False, iTask)
ret = WaitForSingleObject(pHandle, INFINITE)
ret = CloseHandle(pHandle)
End Sub
Est ce que quelqu'un peut m'aider a faire fonctionner la temporisation sur un Windows 7 en 64 bits ?