Bonjour a toutes et tous
Y a t-il une façon simple( très simple) de positionner une "msgbox" dans
la
feuille courante.
J'ai trouvé un exemple sur excelabo qui m'a parut très compliqué pour un
néophyte tel que moi
MERCI
A+
yan
Bonjour a toutes et tous
Y a t-il une façon simple( très simple) de positionner une "msgbox" dans
la
feuille courante.
J'ai trouvé un exemple sur excelabo qui m'a parut très compliqué pour un
néophyte tel que moi
MERCI
A+
yan
Bonjour a toutes et tous
Y a t-il une façon simple( très simple) de positionner une "msgbox" dans
la
feuille courante.
J'ai trouvé un exemple sur excelabo qui m'a parut très compliqué pour un
néophyte tel que moi
MERCI
A+
yan
Bonjour a toutes et tous
Y a t-il une façon simple( très simple) de positionner une "msgbox" dans
la
feuille courante.
J'ai trouvé un exemple sur excelabo qui m'a parut très compliqué pour un
néophyte tel que moi
MERCI
A+
yan
Bonjour a toutes et tous
Y a t-il une façon simple( très simple) de positionner une "msgbox" dans
la
feuille courante.
J'ai trouvé un exemple sur excelabo qui m'a parut très compliqué pour un
néophyte tel que moi
MERCI
A+
yan
Bonjour a toutes et tous
Y a t-il une façon simple( très simple) de positionner une "msgbox" dans
la
feuille courante.
J'ai trouvé un exemple sur excelabo qui m'a parut très compliqué pour un
néophyte tel que moi
MERCI
A+
yan
oups pardon, yan, tu as dit "positionner"...moi, j'ai le chic pour lire la
question APRES y avoir répondu
jps (qui ne voit pas comment faire non plus)
"yan" a écrit dans le message de
news:4310054b$0$1022$Bonjour a toutes et tous
Y a t-il une façon simple( très simple) de positionner une "msgbox" dans
lafeuille courante.
J'ai trouvé un exemple sur excelabo qui m'a parut très compliqué pour un
néophyte tel que moi
MERCI
A+
yan
oups pardon, yan, tu as dit "positionner"...moi, j'ai le chic pour lire la
question APRES y avoir répondu
jps (qui ne voit pas comment faire non plus)
"yan" <xyz@wanadoo.fr> a écrit dans le message de
news:4310054b$0$1022$8fcfb975@news.wanadoo.fr...
Bonjour a toutes et tous
Y a t-il une façon simple( très simple) de positionner une "msgbox" dans
la
feuille courante.
J'ai trouvé un exemple sur excelabo qui m'a parut très compliqué pour un
néophyte tel que moi
MERCI
A+
yan
oups pardon, yan, tu as dit "positionner"...moi, j'ai le chic pour lire la
question APRES y avoir répondu
jps (qui ne voit pas comment faire non plus)
"yan" a écrit dans le message de
news:4310054b$0$1022$Bonjour a toutes et tous
Y a t-il une façon simple( très simple) de positionner une "msgbox" dans
lafeuille courante.
J'ai trouvé un exemple sur excelabo qui m'a parut très compliqué pour un
néophyte tel que moi
MERCI
A+
yan
Bonjour
il y a ceci
Private Declare Function UnhookWindowsHookEx Lib "user32" _
(ByVal hHook As Long) As Long
Private Declare Function GetCurrentThreadId Lib "kernel32" () 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 SetWindowPos Lib "user32" (ByVal hwnd As Long _
, ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long _
, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
Private lgHook As Long
Sub Positionned_MsgBox()
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc, 0, GetCurrentThreadId)
MsgBox " msgbox1 Spéciale !", vbInformation + vbOKOnly, Space(15) & "Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc1, 0, GetCurrentThreadId)
MsgBox " msgbox 2 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc2, 0, GetCurrentThreadId)
MsgBox " msgbox 3 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc3, 0, GetCurrentThreadId)
MsgBox " msgbox 4 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
End Sub
Private Function WinProc(ByVal lMsg As Long, ByVal wParam As Long) As Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc = False
End Function
Private Function WinProc1(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc1 = False
End Function
Private Function WinProc2(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc2 = False
End Function
Private Function WinProc3(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc3 = False
End Function
salutaions
Gilbert
"jps" a écrit dans le message de news:oups pardon, yan, tu as dit "positionner"...moi, j'ai le chic pour lire
la
question APRES y avoir répondu
jps (qui ne voit pas comment faire non plus)
"yan" a écrit dans le message de
news:4310054b$0$1022$Bonjour a toutes et tous
Y a t-il une façon simple( très simple) de positionner une "msgbox" dans
lafeuille courante.
J'ai trouvé un exemple sur excelabo qui m'a parut très compliqué pour un
néophyte tel que moi
MERCI
A+
yan
Bonjour
il y a ceci
Private Declare Function UnhookWindowsHookEx Lib "user32" _
(ByVal hHook As Long) As Long
Private Declare Function GetCurrentThreadId Lib "kernel32" () 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 SetWindowPos Lib "user32" (ByVal hwnd As Long _
, ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long _
, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
Private lgHook As Long
Sub Positionned_MsgBox()
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc, 0, GetCurrentThreadId)
MsgBox " msgbox1 Spéciale !", vbInformation + vbOKOnly, Space(15) & "Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc1, 0, GetCurrentThreadId)
MsgBox " msgbox 2 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc2, 0, GetCurrentThreadId)
MsgBox " msgbox 3 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc3, 0, GetCurrentThreadId)
MsgBox " msgbox 4 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
End Sub
Private Function WinProc(ByVal lMsg As Long, ByVal wParam As Long) As Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc = False
End Function
Private Function WinProc1(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc1 = False
End Function
Private Function WinProc2(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc2 = False
End Function
Private Function WinProc3(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc3 = False
End Function
salutaions
Gilbert
"jps" <adresse@ntiscud> a écrit dans le message de news:
e8m8LztqFHA.3160@TK2MSFTNGP14.phx.gbl...
oups pardon, yan, tu as dit "positionner"...moi, j'ai le chic pour lire
la
question APRES y avoir répondu
jps (qui ne voit pas comment faire non plus)
"yan" <xyz@wanadoo.fr> a écrit dans le message de
news:4310054b$0$1022$8fcfb975@news.wanadoo.fr...
Bonjour a toutes et tous
Y a t-il une façon simple( très simple) de positionner une "msgbox" dans
la
feuille courante.
J'ai trouvé un exemple sur excelabo qui m'a parut très compliqué pour un
néophyte tel que moi
MERCI
A+
yan
Bonjour
il y a ceci
Private Declare Function UnhookWindowsHookEx Lib "user32" _
(ByVal hHook As Long) As Long
Private Declare Function GetCurrentThreadId Lib "kernel32" () 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 SetWindowPos Lib "user32" (ByVal hwnd As Long _
, ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long _
, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
Private lgHook As Long
Sub Positionned_MsgBox()
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc, 0, GetCurrentThreadId)
MsgBox " msgbox1 Spéciale !", vbInformation + vbOKOnly, Space(15) & "Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc1, 0, GetCurrentThreadId)
MsgBox " msgbox 2 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc2, 0, GetCurrentThreadId)
MsgBox " msgbox 3 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc3, 0, GetCurrentThreadId)
MsgBox " msgbox 4 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
End Sub
Private Function WinProc(ByVal lMsg As Long, ByVal wParam As Long) As Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc = False
End Function
Private Function WinProc1(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc1 = False
End Function
Private Function WinProc2(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc2 = False
End Function
Private Function WinProc3(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc3 = False
End Function
salutaions
Gilbert
"jps" a écrit dans le message de news:oups pardon, yan, tu as dit "positionner"...moi, j'ai le chic pour lire
la
question APRES y avoir répondu
jps (qui ne voit pas comment faire non plus)
"yan" a écrit dans le message de
news:4310054b$0$1022$Bonjour a toutes et tous
Y a t-il une façon simple( très simple) de positionner une "msgbox" dans
lafeuille courante.
J'ai trouvé un exemple sur excelabo qui m'a parut très compliqué pour un
néophyte tel que moi
MERCI
A+
yan
Salut
Ah oui c'est simple!!
Pour un non initié je trouve ça énorme, Mais je vais essayé de l'utiliser.
Je mets cette proc dans un module?
Merci de m'avoir répondu
A+
yan
"RGI" a écrit dans le message de news:
43103d81$0$17211$Bonjour
il y a ceci
Private Declare Function UnhookWindowsHookEx Lib "user32" _
(ByVal hHook As Long) As Long
Private Declare Function GetCurrentThreadId Lib "kernel32" () 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 SetWindowPos Lib "user32" (ByVal hwnd As Long _
, ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long _
, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
Private lgHook As Long
Sub Positionned_MsgBox()
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc, 0, GetCurrentThreadId)
MsgBox " msgbox1 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc1, 0, GetCurrentThreadId)
MsgBox " msgbox 2 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc2, 0, GetCurrentThreadId)
MsgBox " msgbox 3 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc3, 0, GetCurrentThreadId)
MsgBox " msgbox 4 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
End Sub
Private Function WinProc(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc = False
End Function
Private Function WinProc1(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc1 = False
End Function
Private Function WinProc2(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc2 = False
End Function
Private Function WinProc3(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc3 = False
End Function
salutaions
Gilbert
"jps" a écrit dans le message de news:oups pardon, yan, tu as dit "positionner"...moi, j'ai le chic pour lire
la
question APRES y avoir répondu
jps (qui ne voit pas comment faire non plus)
"yan" a écrit dans le message de
news:4310054b$0$1022$Bonjour a toutes et tous
Y a t-il une façon simple( très simple) de positionner une "msgbox"
dans
lafeuille courante.
J'ai trouvé un exemple sur excelabo qui m'a parut très compliqué pour
un
néophyte tel que moi
MERCI
A+
yan
Salut
Ah oui c'est simple!!
Pour un non initié je trouve ça énorme, Mais je vais essayé de l'utiliser.
Je mets cette proc dans un module?
Merci de m'avoir répondu
A+
yan
"RGI" <RGI@wanadoo.fr> a écrit dans le message de news:
43103d81$0$17211$8fcfb975@news.wanadoo.fr...
Bonjour
il y a ceci
Private Declare Function UnhookWindowsHookEx Lib "user32" _
(ByVal hHook As Long) As Long
Private Declare Function GetCurrentThreadId Lib "kernel32" () 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 SetWindowPos Lib "user32" (ByVal hwnd As Long _
, ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long _
, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
Private lgHook As Long
Sub Positionned_MsgBox()
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc, 0, GetCurrentThreadId)
MsgBox " msgbox1 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc1, 0, GetCurrentThreadId)
MsgBox " msgbox 2 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc2, 0, GetCurrentThreadId)
MsgBox " msgbox 3 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc3, 0, GetCurrentThreadId)
MsgBox " msgbox 4 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
End Sub
Private Function WinProc(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc = False
End Function
Private Function WinProc1(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc1 = False
End Function
Private Function WinProc2(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc2 = False
End Function
Private Function WinProc3(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc3 = False
End Function
salutaions
Gilbert
"jps" <adresse@ntiscud> a écrit dans le message de news:
e8m8LztqFHA.3160@TK2MSFTNGP14.phx.gbl...
oups pardon, yan, tu as dit "positionner"...moi, j'ai le chic pour lire
la
question APRES y avoir répondu
jps (qui ne voit pas comment faire non plus)
"yan" <xyz@wanadoo.fr> a écrit dans le message de
news:4310054b$0$1022$8fcfb975@news.wanadoo.fr...
Bonjour a toutes et tous
Y a t-il une façon simple( très simple) de positionner une "msgbox"
dans
la
feuille courante.
J'ai trouvé un exemple sur excelabo qui m'a parut très compliqué pour
un
néophyte tel que moi
MERCI
A+
yan
Salut
Ah oui c'est simple!!
Pour un non initié je trouve ça énorme, Mais je vais essayé de l'utiliser.
Je mets cette proc dans un module?
Merci de m'avoir répondu
A+
yan
"RGI" a écrit dans le message de news:
43103d81$0$17211$Bonjour
il y a ceci
Private Declare Function UnhookWindowsHookEx Lib "user32" _
(ByVal hHook As Long) As Long
Private Declare Function GetCurrentThreadId Lib "kernel32" () 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 SetWindowPos Lib "user32" (ByVal hwnd As Long _
, ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long _
, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
Private lgHook As Long
Sub Positionned_MsgBox()
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc, 0, GetCurrentThreadId)
MsgBox " msgbox1 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc1, 0, GetCurrentThreadId)
MsgBox " msgbox 2 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc2, 0, GetCurrentThreadId)
MsgBox " msgbox 3 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc3, 0, GetCurrentThreadId)
MsgBox " msgbox 4 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
End Sub
Private Function WinProc(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc = False
End Function
Private Function WinProc1(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc1 = False
End Function
Private Function WinProc2(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc2 = False
End Function
Private Function WinProc3(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc3 = False
End Function
salutaions
Gilbert
"jps" a écrit dans le message de news:oups pardon, yan, tu as dit "positionner"...moi, j'ai le chic pour lire
la
question APRES y avoir répondu
jps (qui ne voit pas comment faire non plus)
"yan" a écrit dans le message de
news:4310054b$0$1022$Bonjour a toutes et tous
Y a t-il une façon simple( très simple) de positionner une "msgbox"
dans
lafeuille courante.
J'ai trouvé un exemple sur excelabo qui m'a parut très compliqué pour
un
néophyte tel que moi
MERCI
A+
yan
Tu verras que c' est moins difficile de s'en servir que de la créer
Salutations
Gilbert
"yan" a écrit dans le message de news:
431059e6$0$17238$Salut
Ah oui c'est simple!!
Pour un non initié je trouve ça énorme, Mais je vais essayé de
l'utiliser.
Je mets cette proc dans un module?
Merci de m'avoir répondu
A+
yan
"RGI" a écrit dans le message de news:
43103d81$0$17211$Bonjour
il y a ceci
Private Declare Function UnhookWindowsHookEx Lib "user32" _
(ByVal hHook As Long) As Long
Private Declare Function GetCurrentThreadId Lib "kernel32" () 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 SetWindowPos Lib "user32" (ByVal hwnd As Long _
, ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long _
, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
Private lgHook As Long
Sub Positionned_MsgBox()
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc, 0, GetCurrentThreadId)
MsgBox " msgbox1 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc1, 0,
GetCurrentThreadId)
MsgBox " msgbox 2 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc2, 0,
GetCurrentThreadId)
MsgBox " msgbox 3 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc3, 0,
GetCurrentThreadId)
MsgBox " msgbox 4 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
End Sub
Private Function WinProc(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc = False
End Function
Private Function WinProc1(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc1 = False
End Function
Private Function WinProc2(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc2 = False
End Function
Private Function WinProc3(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc3 = False
End Function
salutaions
Gilbert
"jps" a écrit dans le message de news:oups pardon, yan, tu as dit "positionner"...moi, j'ai le chic pour lire
la
question APRES y avoir répondu
jps (qui ne voit pas comment faire non plus)
"yan" a écrit dans le message de
news:4310054b$0$1022$Bonjour a toutes et tous
Y a t-il une façon simple( très simple) de positionner une "msgbox"
dans
lafeuille courante.
J'ai trouvé un exemple sur excelabo qui m'a parut très compliqué pour
un
néophyte tel que moi
MERCI
A+
yan
Tu verras que c' est moins difficile de s'en servir que de la créer
Salutations
Gilbert
"yan" <xyz@wanadoo.fr> a écrit dans le message de news:
431059e6$0$17238$8fcfb975@news.wanadoo.fr...
Salut
Ah oui c'est simple!!
Pour un non initié je trouve ça énorme, Mais je vais essayé de
l'utiliser.
Je mets cette proc dans un module?
Merci de m'avoir répondu
A+
yan
"RGI" <RGI@wanadoo.fr> a écrit dans le message de news:
43103d81$0$17211$8fcfb975@news.wanadoo.fr...
Bonjour
il y a ceci
Private Declare Function UnhookWindowsHookEx Lib "user32" _
(ByVal hHook As Long) As Long
Private Declare Function GetCurrentThreadId Lib "kernel32" () 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 SetWindowPos Lib "user32" (ByVal hwnd As Long _
, ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long _
, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
Private lgHook As Long
Sub Positionned_MsgBox()
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc, 0, GetCurrentThreadId)
MsgBox " msgbox1 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc1, 0,
GetCurrentThreadId)
MsgBox " msgbox 2 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc2, 0,
GetCurrentThreadId)
MsgBox " msgbox 3 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc3, 0,
GetCurrentThreadId)
MsgBox " msgbox 4 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
End Sub
Private Function WinProc(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc = False
End Function
Private Function WinProc1(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc1 = False
End Function
Private Function WinProc2(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc2 = False
End Function
Private Function WinProc3(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc3 = False
End Function
salutaions
Gilbert
"jps" <adresse@ntiscud> a écrit dans le message de news:
e8m8LztqFHA.3160@TK2MSFTNGP14.phx.gbl...
oups pardon, yan, tu as dit "positionner"...moi, j'ai le chic pour lire
la
question APRES y avoir répondu
jps (qui ne voit pas comment faire non plus)
"yan" <xyz@wanadoo.fr> a écrit dans le message de
news:4310054b$0$1022$8fcfb975@news.wanadoo.fr...
Bonjour a toutes et tous
Y a t-il une façon simple( très simple) de positionner une "msgbox"
dans
la
feuille courante.
J'ai trouvé un exemple sur excelabo qui m'a parut très compliqué pour
un
néophyte tel que moi
MERCI
A+
yan
Tu verras que c' est moins difficile de s'en servir que de la créer
Salutations
Gilbert
"yan" a écrit dans le message de news:
431059e6$0$17238$Salut
Ah oui c'est simple!!
Pour un non initié je trouve ça énorme, Mais je vais essayé de
l'utiliser.
Je mets cette proc dans un module?
Merci de m'avoir répondu
A+
yan
"RGI" a écrit dans le message de news:
43103d81$0$17211$Bonjour
il y a ceci
Private Declare Function UnhookWindowsHookEx Lib "user32" _
(ByVal hHook As Long) As Long
Private Declare Function GetCurrentThreadId Lib "kernel32" () 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 SetWindowPos Lib "user32" (ByVal hwnd As Long _
, ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long _
, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
Private lgHook As Long
Sub Positionned_MsgBox()
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc, 0, GetCurrentThreadId)
MsgBox " msgbox1 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc1, 0,
GetCurrentThreadId)
MsgBox " msgbox 2 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc2, 0,
GetCurrentThreadId)
MsgBox " msgbox 3 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc3, 0,
GetCurrentThreadId)
MsgBox " msgbox 4 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
End Sub
Private Function WinProc(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc = False
End Function
Private Function WinProc1(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc1 = False
End Function
Private Function WinProc2(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc2 = False
End Function
Private Function WinProc3(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc3 = False
End Function
salutaions
Gilbert
"jps" a écrit dans le message de news:oups pardon, yan, tu as dit "positionner"...moi, j'ai le chic pour lire
la
question APRES y avoir répondu
jps (qui ne voit pas comment faire non plus)
"yan" a écrit dans le message de
news:4310054b$0$1022$Bonjour a toutes et tous
Y a t-il une façon simple( très simple) de positionner une "msgbox"
dans
lafeuille courante.
J'ai trouvé un exemple sur excelabo qui m'a parut très compliqué pour
un
néophyte tel que moi
MERCI
A+
yan
Salut
C'est sur et j'en serai bien incapable
J'ai donc testé ,et j'ai mis toute ta procédure dans un module
Cela fonctionne parfaitement bien
J'ai mis ma petite procédure ,(qui faisait apparaître une msgbox) dans le
même module
Et j'ai remplacé mon instruction msgbox......... par
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc1, 0, GetCurrentThreadId)
MsgBox " msgbox 2 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
en affectant dans "Private Function WinProc1" les valeurs pour afficher la
msgbox au bon endroit
jusque la pas de pb
Mais a la place de " msgbox 2 Spéciale !" je voudrais faire apparaître la
valeur d'une variable numérique que j'ai appelé total dans ma proc
mais si je fais cela Excel ce ferme avec une fenêtre me disant que Excel a
rencontré un problème
C'est peut-être parce que je mets du numérique a la place du texte
que dois-je modifier
A+
yan
"RGI" a écrit dans le message de news:
431062e4$0$1724$Tu verras que c' est moins difficile de s'en servir que de la créer
Salutations
Gilbert
"yan" a écrit dans le message de news:
431059e6$0$17238$Salut
Ah oui c'est simple!!
Pour un non initié je trouve ça énorme, Mais je vais essayé de
l'utiliser.
Je mets cette proc dans un module?
Merci de m'avoir répondu
A+
yan
"RGI" a écrit dans le message de news:
43103d81$0$17211$Bonjour
il y a ceci
Private Declare Function UnhookWindowsHookEx Lib "user32" _
(ByVal hHook As Long) As Long
Private Declare Function GetCurrentThreadId Lib "kernel32" () 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 SetWindowPos Lib "user32" (ByVal hwnd As Long
_
, ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long _
, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
Private lgHook As Long
Sub Positionned_MsgBox()
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc, 0,
GetCurrentThreadId)
MsgBox " msgbox1 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc1, 0,
GetCurrentThreadId)
MsgBox " msgbox 2 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc2, 0,
GetCurrentThreadId)
MsgBox " msgbox 3 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc3, 0,
GetCurrentThreadId)
MsgBox " msgbox 4 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
End Sub
Private Function WinProc(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc = False
End Function
Private Function WinProc1(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc1 = False
End Function
Private Function WinProc2(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc2 = False
End Function
Private Function WinProc3(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc3 = False
End Function
salutaions
Gilbert
"jps" a écrit dans le message de news:oups pardon, yan, tu as dit "positionner"...moi, j'ai le chic pour
lire la
question APRES y avoir répondu
jps (qui ne voit pas comment faire non plus)
"yan" a écrit dans le message de
news:4310054b$0$1022$Bonjour a toutes et tous
Y a t-il une façon simple( très simple) de positionner une "msgbox"
dans
lafeuille courante.
J'ai trouvé un exemple sur excelabo qui m'a parut très compliqué pour
un
néophyte tel que moi
MERCI
A+
yan
Salut
C'est sur et j'en serai bien incapable
J'ai donc testé ,et j'ai mis toute ta procédure dans un module
Cela fonctionne parfaitement bien
J'ai mis ma petite procédure ,(qui faisait apparaître une msgbox) dans le
même module
Et j'ai remplacé mon instruction msgbox......... par
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc1, 0, GetCurrentThreadId)
MsgBox " msgbox 2 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
en affectant dans "Private Function WinProc1" les valeurs pour afficher la
msgbox au bon endroit
jusque la pas de pb
Mais a la place de " msgbox 2 Spéciale !" je voudrais faire apparaître la
valeur d'une variable numérique que j'ai appelé total dans ma proc
mais si je fais cela Excel ce ferme avec une fenêtre me disant que Excel a
rencontré un problème
C'est peut-être parce que je mets du numérique a la place du texte
que dois-je modifier
A+
yan
"RGI" <RGI@wanadoo.fr> a écrit dans le message de news:
431062e4$0$1724$8fcfb975@news.wanadoo.fr...
Tu verras que c' est moins difficile de s'en servir que de la créer
Salutations
Gilbert
"yan" <xyz@wanadoo.fr> a écrit dans le message de news:
431059e6$0$17238$8fcfb975@news.wanadoo.fr...
Salut
Ah oui c'est simple!!
Pour un non initié je trouve ça énorme, Mais je vais essayé de
l'utiliser.
Je mets cette proc dans un module?
Merci de m'avoir répondu
A+
yan
"RGI" <RGI@wanadoo.fr> a écrit dans le message de news:
43103d81$0$17211$8fcfb975@news.wanadoo.fr...
Bonjour
il y a ceci
Private Declare Function UnhookWindowsHookEx Lib "user32" _
(ByVal hHook As Long) As Long
Private Declare Function GetCurrentThreadId Lib "kernel32" () 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 SetWindowPos Lib "user32" (ByVal hwnd As Long
_
, ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long _
, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
Private lgHook As Long
Sub Positionned_MsgBox()
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc, 0,
GetCurrentThreadId)
MsgBox " msgbox1 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc1, 0,
GetCurrentThreadId)
MsgBox " msgbox 2 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc2, 0,
GetCurrentThreadId)
MsgBox " msgbox 3 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc3, 0,
GetCurrentThreadId)
MsgBox " msgbox 4 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
End Sub
Private Function WinProc(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc = False
End Function
Private Function WinProc1(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc1 = False
End Function
Private Function WinProc2(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc2 = False
End Function
Private Function WinProc3(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc3 = False
End Function
salutaions
Gilbert
"jps" <adresse@ntiscud> a écrit dans le message de news:
e8m8LztqFHA.3160@TK2MSFTNGP14.phx.gbl...
oups pardon, yan, tu as dit "positionner"...moi, j'ai le chic pour
lire la
question APRES y avoir répondu
jps (qui ne voit pas comment faire non plus)
"yan" <xyz@wanadoo.fr> a écrit dans le message de
news:4310054b$0$1022$8fcfb975@news.wanadoo.fr...
Bonjour a toutes et tous
Y a t-il une façon simple( très simple) de positionner une "msgbox"
dans
la
feuille courante.
J'ai trouvé un exemple sur excelabo qui m'a parut très compliqué pour
un
néophyte tel que moi
MERCI
A+
yan
Salut
C'est sur et j'en serai bien incapable
J'ai donc testé ,et j'ai mis toute ta procédure dans un module
Cela fonctionne parfaitement bien
J'ai mis ma petite procédure ,(qui faisait apparaître une msgbox) dans le
même module
Et j'ai remplacé mon instruction msgbox......... par
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc1, 0, GetCurrentThreadId)
MsgBox " msgbox 2 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
en affectant dans "Private Function WinProc1" les valeurs pour afficher la
msgbox au bon endroit
jusque la pas de pb
Mais a la place de " msgbox 2 Spéciale !" je voudrais faire apparaître la
valeur d'une variable numérique que j'ai appelé total dans ma proc
mais si je fais cela Excel ce ferme avec une fenêtre me disant que Excel a
rencontré un problème
C'est peut-être parce que je mets du numérique a la place du texte
que dois-je modifier
A+
yan
"RGI" a écrit dans le message de news:
431062e4$0$1724$Tu verras que c' est moins difficile de s'en servir que de la créer
Salutations
Gilbert
"yan" a écrit dans le message de news:
431059e6$0$17238$Salut
Ah oui c'est simple!!
Pour un non initié je trouve ça énorme, Mais je vais essayé de
l'utiliser.
Je mets cette proc dans un module?
Merci de m'avoir répondu
A+
yan
"RGI" a écrit dans le message de news:
43103d81$0$17211$Bonjour
il y a ceci
Private Declare Function UnhookWindowsHookEx Lib "user32" _
(ByVal hHook As Long) As Long
Private Declare Function GetCurrentThreadId Lib "kernel32" () 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 SetWindowPos Lib "user32" (ByVal hwnd As Long
_
, ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long _
, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
Private lgHook As Long
Sub Positionned_MsgBox()
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc, 0,
GetCurrentThreadId)
MsgBox " msgbox1 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc1, 0,
GetCurrentThreadId)
MsgBox " msgbox 2 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc2, 0,
GetCurrentThreadId)
MsgBox " msgbox 3 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc3, 0,
GetCurrentThreadId)
MsgBox " msgbox 4 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
End Sub
Private Function WinProc(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc = False
End Function
Private Function WinProc1(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc1 = False
End Function
Private Function WinProc2(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc2 = False
End Function
Private Function WinProc3(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc3 = False
End Function
salutaions
Gilbert
"jps" a écrit dans le message de news:oups pardon, yan, tu as dit "positionner"...moi, j'ai le chic pour
lire la
question APRES y avoir répondu
jps (qui ne voit pas comment faire non plus)
"yan" a écrit dans le message de
news:4310054b$0$1022$Bonjour a toutes et tous
Y a t-il une façon simple( très simple) de positionner une "msgbox"
dans
lafeuille courante.
J'ai trouvé un exemple sur excelabo qui m'a parut très compliqué pour
un
néophyte tel que moi
MERCI
A+
yan
Salut
C'est sur et j'en serai bien incapable
J'ai donc testé ,et j'ai mis toute ta procédure dans un module
Cela fonctionne parfaitement bien
J'ai mis ma petite procédure ,(qui faisait apparaître une msgbox) dans le
même module
Et j'ai remplacé mon instruction msgbox......... par
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc1, 0, GetCurrentThreadId)
MsgBox " msgbox 2 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
en affectant dans "Private Function WinProc1" les valeurs pour afficher la
msgbox au bon endroit
jusque la pas de pb
Mais a la place de " msgbox 2 Spéciale !" je voudrais faire apparaître la
valeur d'une variable numérique que j'ai appelé total dans ma proc
mais si je fais cela Excel ce ferme avec une fenêtre me disant que Excel a
rencontré un problème
C'est peut-être parce que je mets du numérique a la place du texte
que dois-je modifier
A+
yan
"RGI" a écrit dans le message de news:
431062e4$0$1724$Tu verras que c' est moins difficile de s'en servir que de la créer
Salutations
Gilbert
"yan" a écrit dans le message de news:
431059e6$0$17238$Salut
Ah oui c'est simple!!
Pour un non initié je trouve ça énorme, Mais je vais essayé de
l'utiliser.
Je mets cette proc dans un module?
Merci de m'avoir répondu
A+
yan
"RGI" a écrit dans le message de news:
43103d81$0$17211$Bonjour
il y a ceci
Private Declare Function UnhookWindowsHookEx Lib "user32" _
(ByVal hHook As Long) As Long
Private Declare Function GetCurrentThreadId Lib "kernel32" () 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 SetWindowPos Lib "user32" (ByVal hwnd As Long
_
, ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long _
, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
Private lgHook As Long
Sub Positionned_MsgBox()
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc, 0,
GetCurrentThreadId)
MsgBox " msgbox1 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc1, 0,
GetCurrentThreadId)
MsgBox " msgbox 2 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc2, 0,
GetCurrentThreadId)
MsgBox " msgbox 3 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc3, 0,
GetCurrentThreadId)
MsgBox " msgbox 4 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
End Sub
Private Function WinProc(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc = False
End Function
Private Function WinProc1(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc1 = False
End Function
Private Function WinProc2(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc2 = False
End Function
Private Function WinProc3(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc3 = False
End Function
salutaions
Gilbert
"jps" a écrit dans le message de news:oups pardon, yan, tu as dit "positionner"...moi, j'ai le chic pour
lire la
question APRES y avoir répondu
jps (qui ne voit pas comment faire non plus)
"yan" a écrit dans le message de
news:4310054b$0$1022$Bonjour a toutes et tous
Y a t-il une façon simple( très simple) de positionner une "msgbox"
dans
lafeuille courante.
J'ai trouvé un exemple sur excelabo qui m'a parut très compliqué pour
un
néophyte tel que moi
MERCI
A+
yan
Salut
C'est sur et j'en serai bien incapable
J'ai donc testé ,et j'ai mis toute ta procédure dans un module
Cela fonctionne parfaitement bien
J'ai mis ma petite procédure ,(qui faisait apparaître une msgbox) dans le
même module
Et j'ai remplacé mon instruction msgbox......... par
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc1, 0, GetCurrentThreadId)
MsgBox " msgbox 2 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
en affectant dans "Private Function WinProc1" les valeurs pour afficher la
msgbox au bon endroit
jusque la pas de pb
Mais a la place de " msgbox 2 Spéciale !" je voudrais faire apparaître la
valeur d'une variable numérique que j'ai appelé total dans ma proc
mais si je fais cela Excel ce ferme avec une fenêtre me disant que Excel a
rencontré un problème
C'est peut-être parce que je mets du numérique a la place du texte
que dois-je modifier
A+
yan
"RGI" <RGI@wanadoo.fr> a écrit dans le message de news:
431062e4$0$1724$8fcfb975@news.wanadoo.fr...
Tu verras que c' est moins difficile de s'en servir que de la créer
Salutations
Gilbert
"yan" <xyz@wanadoo.fr> a écrit dans le message de news:
431059e6$0$17238$8fcfb975@news.wanadoo.fr...
Salut
Ah oui c'est simple!!
Pour un non initié je trouve ça énorme, Mais je vais essayé de
l'utiliser.
Je mets cette proc dans un module?
Merci de m'avoir répondu
A+
yan
"RGI" <RGI@wanadoo.fr> a écrit dans le message de news:
43103d81$0$17211$8fcfb975@news.wanadoo.fr...
Bonjour
il y a ceci
Private Declare Function UnhookWindowsHookEx Lib "user32" _
(ByVal hHook As Long) As Long
Private Declare Function GetCurrentThreadId Lib "kernel32" () 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 SetWindowPos Lib "user32" (ByVal hwnd As Long
_
, ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long _
, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
Private lgHook As Long
Sub Positionned_MsgBox()
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc, 0,
GetCurrentThreadId)
MsgBox " msgbox1 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc1, 0,
GetCurrentThreadId)
MsgBox " msgbox 2 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc2, 0,
GetCurrentThreadId)
MsgBox " msgbox 3 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc3, 0,
GetCurrentThreadId)
MsgBox " msgbox 4 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
End Sub
Private Function WinProc(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc = False
End Function
Private Function WinProc1(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc1 = False
End Function
Private Function WinProc2(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc2 = False
End Function
Private Function WinProc3(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc3 = False
End Function
salutaions
Gilbert
"jps" <adresse@ntiscud> a écrit dans le message de news:
e8m8LztqFHA.3160@TK2MSFTNGP14.phx.gbl...
oups pardon, yan, tu as dit "positionner"...moi, j'ai le chic pour
lire la
question APRES y avoir répondu
jps (qui ne voit pas comment faire non plus)
"yan" <xyz@wanadoo.fr> a écrit dans le message de
news:4310054b$0$1022$8fcfb975@news.wanadoo.fr...
Bonjour a toutes et tous
Y a t-il une façon simple( très simple) de positionner une "msgbox"
dans
la
feuille courante.
J'ai trouvé un exemple sur excelabo qui m'a parut très compliqué pour
un
néophyte tel que moi
MERCI
A+
yan
Salut
C'est sur et j'en serai bien incapable
J'ai donc testé ,et j'ai mis toute ta procédure dans un module
Cela fonctionne parfaitement bien
J'ai mis ma petite procédure ,(qui faisait apparaître une msgbox) dans le
même module
Et j'ai remplacé mon instruction msgbox......... par
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc1, 0, GetCurrentThreadId)
MsgBox " msgbox 2 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
en affectant dans "Private Function WinProc1" les valeurs pour afficher la
msgbox au bon endroit
jusque la pas de pb
Mais a la place de " msgbox 2 Spéciale !" je voudrais faire apparaître la
valeur d'une variable numérique que j'ai appelé total dans ma proc
mais si je fais cela Excel ce ferme avec une fenêtre me disant que Excel a
rencontré un problème
C'est peut-être parce que je mets du numérique a la place du texte
que dois-je modifier
A+
yan
"RGI" a écrit dans le message de news:
431062e4$0$1724$Tu verras que c' est moins difficile de s'en servir que de la créer
Salutations
Gilbert
"yan" a écrit dans le message de news:
431059e6$0$17238$Salut
Ah oui c'est simple!!
Pour un non initié je trouve ça énorme, Mais je vais essayé de
l'utiliser.
Je mets cette proc dans un module?
Merci de m'avoir répondu
A+
yan
"RGI" a écrit dans le message de news:
43103d81$0$17211$Bonjour
il y a ceci
Private Declare Function UnhookWindowsHookEx Lib "user32" _
(ByVal hHook As Long) As Long
Private Declare Function GetCurrentThreadId Lib "kernel32" () 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 SetWindowPos Lib "user32" (ByVal hwnd As Long
_
, ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long _
, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
Private lgHook As Long
Sub Positionned_MsgBox()
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc, 0,
GetCurrentThreadId)
MsgBox " msgbox1 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc1, 0,
GetCurrentThreadId)
MsgBox " msgbox 2 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc2, 0,
GetCurrentThreadId)
MsgBox " msgbox 3 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc3, 0,
GetCurrentThreadId)
MsgBox " msgbox 4 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
End Sub
Private Function WinProc(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc = False
End Function
Private Function WinProc1(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc1 = False
End Function
Private Function WinProc2(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc2 = False
End Function
Private Function WinProc3(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc3 = False
End Function
salutaions
Gilbert
"jps" a écrit dans le message de news:oups pardon, yan, tu as dit "positionner"...moi, j'ai le chic pour
lire la
question APRES y avoir répondu
jps (qui ne voit pas comment faire non plus)
"yan" a écrit dans le message de
news:4310054b$0$1022$Bonjour a toutes et tous
Y a t-il une façon simple( très simple) de positionner une "msgbox"
dans
lafeuille courante.
J'ai trouvé un exemple sur excelabo qui m'a parut très compliqué pour
un
néophyte tel que moi
MERCI
A+
yan
si tu mets dans ta feuille une valeur
oups en "a1" de la feuil1 bien entendu
Salutations
Gilbert
"yan" a écrit dans le message de news:
431078f6$0$5391$Salut
C'est sur et j'en serai bien incapable
J'ai donc testé ,et j'ai mis toute ta procédure dans un module
Cela fonctionne parfaitement bien
J'ai mis ma petite procédure ,(qui faisait apparaître une msgbox) dans le
même module
Et j'ai remplacé mon instruction msgbox......... par
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc1, 0, GetCurrentThreadId)
MsgBox " msgbox 2 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
en affectant dans "Private Function WinProc1" les valeurs pour afficher
la msgbox au bon endroit
jusque la pas de pb
Mais a la place de " msgbox 2 Spéciale !" je voudrais faire apparaître la
valeur d'une variable numérique que j'ai appelé total dans ma proc
mais si je fais cela Excel ce ferme avec une fenêtre me disant que Excel
a rencontré un problème
C'est peut-être parce que je mets du numérique a la place du texte
que dois-je modifier
A+
yan
"RGI" a écrit dans le message de news:
431062e4$0$1724$Tu verras que c' est moins difficile de s'en servir que de la créer
Salutations
Gilbert
"yan" a écrit dans le message de news:
431059e6$0$17238$Salut
Ah oui c'est simple!!
Pour un non initié je trouve ça énorme, Mais je vais essayé de
l'utiliser.
Je mets cette proc dans un module?
Merci de m'avoir répondu
A+
yan
"RGI" a écrit dans le message de news:
43103d81$0$17211$Bonjour
il y a ceci
Private Declare Function UnhookWindowsHookEx Lib "user32" _
(ByVal hHook As Long) As Long
Private Declare Function GetCurrentThreadId Lib "kernel32" () 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 SetWindowPos Lib "user32" (ByVal hwnd As Long
_
, ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long _
, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
Private lgHook As Long
Sub Positionned_MsgBox()
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc, 0,
GetCurrentThreadId)
MsgBox " msgbox1 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc1, 0,
GetCurrentThreadId)
MsgBox " msgbox 2 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc2, 0,
GetCurrentThreadId)
MsgBox " msgbox 3 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc3, 0,
GetCurrentThreadId)
MsgBox " msgbox 4 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
End Sub
Private Function WinProc(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc = False
End Function
Private Function WinProc1(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc1 = False
End Function
Private Function WinProc2(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc2 = False
End Function
Private Function WinProc3(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc3 = False
End Function
salutaions
Gilbert
"jps" a écrit dans le message de news:oups pardon, yan, tu as dit "positionner"...moi, j'ai le chic pour
lire la
question APRES y avoir répondu
jps (qui ne voit pas comment faire non plus)
"yan" a écrit dans le message de
news:4310054b$0$1022$Bonjour a toutes et tous
Y a t-il une façon simple( très simple) de positionner une "msgbox"
dans
lafeuille courante.
J'ai trouvé un exemple sur excelabo qui m'a parut très compliqué
pour un
néophyte tel que moi
MERCI
A+
yan
si tu mets dans ta feuille une valeur
oups en "a1" de la feuil1 bien entendu
Salutations
Gilbert
"yan" <xyz@wanadoo.fr> a écrit dans le message de news:
431078f6$0$5391$8fcfb975@news.wanadoo.fr...
Salut
C'est sur et j'en serai bien incapable
J'ai donc testé ,et j'ai mis toute ta procédure dans un module
Cela fonctionne parfaitement bien
J'ai mis ma petite procédure ,(qui faisait apparaître une msgbox) dans le
même module
Et j'ai remplacé mon instruction msgbox......... par
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc1, 0, GetCurrentThreadId)
MsgBox " msgbox 2 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
en affectant dans "Private Function WinProc1" les valeurs pour afficher
la msgbox au bon endroit
jusque la pas de pb
Mais a la place de " msgbox 2 Spéciale !" je voudrais faire apparaître la
valeur d'une variable numérique que j'ai appelé total dans ma proc
mais si je fais cela Excel ce ferme avec une fenêtre me disant que Excel
a rencontré un problème
C'est peut-être parce que je mets du numérique a la place du texte
que dois-je modifier
A+
yan
"RGI" <RGI@wanadoo.fr> a écrit dans le message de news:
431062e4$0$1724$8fcfb975@news.wanadoo.fr...
Tu verras que c' est moins difficile de s'en servir que de la créer
Salutations
Gilbert
"yan" <xyz@wanadoo.fr> a écrit dans le message de news:
431059e6$0$17238$8fcfb975@news.wanadoo.fr...
Salut
Ah oui c'est simple!!
Pour un non initié je trouve ça énorme, Mais je vais essayé de
l'utiliser.
Je mets cette proc dans un module?
Merci de m'avoir répondu
A+
yan
"RGI" <RGI@wanadoo.fr> a écrit dans le message de news:
43103d81$0$17211$8fcfb975@news.wanadoo.fr...
Bonjour
il y a ceci
Private Declare Function UnhookWindowsHookEx Lib "user32" _
(ByVal hHook As Long) As Long
Private Declare Function GetCurrentThreadId Lib "kernel32" () 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 SetWindowPos Lib "user32" (ByVal hwnd As Long
_
, ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long _
, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
Private lgHook As Long
Sub Positionned_MsgBox()
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc, 0,
GetCurrentThreadId)
MsgBox " msgbox1 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc1, 0,
GetCurrentThreadId)
MsgBox " msgbox 2 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc2, 0,
GetCurrentThreadId)
MsgBox " msgbox 3 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc3, 0,
GetCurrentThreadId)
MsgBox " msgbox 4 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
End Sub
Private Function WinProc(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc = False
End Function
Private Function WinProc1(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc1 = False
End Function
Private Function WinProc2(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc2 = False
End Function
Private Function WinProc3(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc3 = False
End Function
salutaions
Gilbert
"jps" <adresse@ntiscud> a écrit dans le message de news:
e8m8LztqFHA.3160@TK2MSFTNGP14.phx.gbl...
oups pardon, yan, tu as dit "positionner"...moi, j'ai le chic pour
lire la
question APRES y avoir répondu
jps (qui ne voit pas comment faire non plus)
"yan" <xyz@wanadoo.fr> a écrit dans le message de
news:4310054b$0$1022$8fcfb975@news.wanadoo.fr...
Bonjour a toutes et tous
Y a t-il une façon simple( très simple) de positionner une "msgbox"
dans
la
feuille courante.
J'ai trouvé un exemple sur excelabo qui m'a parut très compliqué
pour un
néophyte tel que moi
MERCI
A+
yan
si tu mets dans ta feuille une valeur
oups en "a1" de la feuil1 bien entendu
Salutations
Gilbert
"yan" a écrit dans le message de news:
431078f6$0$5391$Salut
C'est sur et j'en serai bien incapable
J'ai donc testé ,et j'ai mis toute ta procédure dans un module
Cela fonctionne parfaitement bien
J'ai mis ma petite procédure ,(qui faisait apparaître une msgbox) dans le
même module
Et j'ai remplacé mon instruction msgbox......... par
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc1, 0, GetCurrentThreadId)
MsgBox " msgbox 2 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
en affectant dans "Private Function WinProc1" les valeurs pour afficher
la msgbox au bon endroit
jusque la pas de pb
Mais a la place de " msgbox 2 Spéciale !" je voudrais faire apparaître la
valeur d'une variable numérique que j'ai appelé total dans ma proc
mais si je fais cela Excel ce ferme avec une fenêtre me disant que Excel
a rencontré un problème
C'est peut-être parce que je mets du numérique a la place du texte
que dois-je modifier
A+
yan
"RGI" a écrit dans le message de news:
431062e4$0$1724$Tu verras que c' est moins difficile de s'en servir que de la créer
Salutations
Gilbert
"yan" a écrit dans le message de news:
431059e6$0$17238$Salut
Ah oui c'est simple!!
Pour un non initié je trouve ça énorme, Mais je vais essayé de
l'utiliser.
Je mets cette proc dans un module?
Merci de m'avoir répondu
A+
yan
"RGI" a écrit dans le message de news:
43103d81$0$17211$Bonjour
il y a ceci
Private Declare Function UnhookWindowsHookEx Lib "user32" _
(ByVal hHook As Long) As Long
Private Declare Function GetCurrentThreadId Lib "kernel32" () 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 SetWindowPos Lib "user32" (ByVal hwnd As Long
_
, ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long _
, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
Private lgHook As Long
Sub Positionned_MsgBox()
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc, 0,
GetCurrentThreadId)
MsgBox " msgbox1 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc1, 0,
GetCurrentThreadId)
MsgBox " msgbox 2 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc2, 0,
GetCurrentThreadId)
MsgBox " msgbox 3 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc3, 0,
GetCurrentThreadId)
MsgBox " msgbox 4 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
End Sub
Private Function WinProc(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc = False
End Function
Private Function WinProc1(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc1 = False
End Function
Private Function WinProc2(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc2 = False
End Function
Private Function WinProc3(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc3 = False
End Function
salutaions
Gilbert
"jps" a écrit dans le message de news:oups pardon, yan, tu as dit "positionner"...moi, j'ai le chic pour
lire la
question APRES y avoir répondu
jps (qui ne voit pas comment faire non plus)
"yan" a écrit dans le message de
news:4310054b$0$1022$Bonjour a toutes et tous
Y a t-il une façon simple( très simple) de positionner une "msgbox"
dans
lafeuille courante.
J'ai trouvé un exemple sur excelabo qui m'a parut très compliqué
pour un
néophyte tel que moi
MERCI
A+
yan
Salut
j'ai fait ce que tu m'as dit ça marche
Mais quand je remplace
msg = Range("a1").Value par
msg = total + totalcrédit - totaldébit qui est le résultat d'un calcul ça
plante
Et la je viens de me rendre compte d'une chose surprenante si le nombre
est supérieur a 5 caractères,point décimal compris ça plante
inférieur a 6 caractères c'est bon
exemple
10000 bon
100000 pas bon
326.12 pas bon
326.1 bon
3.213 bon
que ce passe t-il
cela est très mystérieux pour moi
tu as une idée
Moi arrête pour ce soir ça me prend la tête je lire un peu
bonsoir
A+
yan
"RGI" a écrit dans le message de news:
431082b6$0$17203$si tu mets dans ta feuille une valeur
oups en "a1" de la feuil1 bien entendu
Salutations
Gilbert
"yan" a écrit dans le message de news:
431078f6$0$5391$Salut
C'est sur et j'en serai bien incapable
J'ai donc testé ,et j'ai mis toute ta procédure dans un module
Cela fonctionne parfaitement bien
J'ai mis ma petite procédure ,(qui faisait apparaître une msgbox) dans
le même module
Et j'ai remplacé mon instruction msgbox......... par
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc1, 0,
GetCurrentThreadId)
MsgBox " msgbox 2 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
en affectant dans "Private Function WinProc1" les valeurs pour afficher
la msgbox au bon endroit
jusque la pas de pb
Mais a la place de " msgbox 2 Spéciale !" je voudrais faire apparaître
la valeur d'une variable numérique que j'ai appelé total dans ma proc
mais si je fais cela Excel ce ferme avec une fenêtre me disant que Excel
a rencontré un problème
C'est peut-être parce que je mets du numérique a la place du texte
que dois-je modifier
A+
yan
"RGI" a écrit dans le message de news:
431062e4$0$1724$Tu verras que c' est moins difficile de s'en servir que de la créer
Salutations
Gilbert
"yan" a écrit dans le message de news:
431059e6$0$17238$Salut
Ah oui c'est simple!!
Pour un non initié je trouve ça énorme, Mais je vais essayé de
l'utiliser.
Je mets cette proc dans un module?
Merci de m'avoir répondu
A+
yan
"RGI" a écrit dans le message de news:
43103d81$0$17211$Bonjour
il y a ceci
Private Declare Function UnhookWindowsHookEx Lib "user32" _
(ByVal hHook As Long) As Long
Private Declare Function GetCurrentThreadId Lib "kernel32" () 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 SetWindowPos Lib "user32" (ByVal hwnd As
Long _
, ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long _
, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
Private lgHook As Long
Sub Positionned_MsgBox()
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc, 0,
GetCurrentThreadId)
MsgBox " msgbox1 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc1, 0,
GetCurrentThreadId)
MsgBox " msgbox 2 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc2, 0,
GetCurrentThreadId)
MsgBox " msgbox 3 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc3, 0,
GetCurrentThreadId)
MsgBox " msgbox 4 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
End Sub
Private Function WinProc(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc = False
End Function
Private Function WinProc1(ByVal lMsg As Long, ByVal wParam As Long)
As Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc1 = False
End Function
Private Function WinProc2(ByVal lMsg As Long, ByVal wParam As Long)
As Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc2 = False
End Function
Private Function WinProc3(ByVal lMsg As Long, ByVal wParam As Long)
As Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc3 = False
End Function
salutaions
Gilbert
"jps" a écrit dans le message de news:oups pardon, yan, tu as dit "positionner"...moi, j'ai le chic pour
lire la
question APRES y avoir répondu
jps (qui ne voit pas comment faire non plus)
"yan" a écrit dans le message de
news:4310054b$0$1022$Bonjour a toutes et tous
Y a t-il une façon simple( très simple) de positionner une "msgbox"
dans
lafeuille courante.
J'ai trouvé un exemple sur excelabo qui m'a parut très compliqué
pour un
néophyte tel que moi
MERCI
A+
yan
Salut
j'ai fait ce que tu m'as dit ça marche
Mais quand je remplace
msg = Range("a1").Value par
msg = total + totalcrédit - totaldébit qui est le résultat d'un calcul ça
plante
Et la je viens de me rendre compte d'une chose surprenante si le nombre
est supérieur a 5 caractères,point décimal compris ça plante
inférieur a 6 caractères c'est bon
exemple
10000 bon
100000 pas bon
326.12 pas bon
326.1 bon
3.213 bon
que ce passe t-il
cela est très mystérieux pour moi
tu as une idée
Moi arrête pour ce soir ça me prend la tête je lire un peu
bonsoir
A+
yan
"RGI" <RGI@wanadoo.fr> a écrit dans le message de news:
431082b6$0$17203$8fcfb975@news.wanadoo.fr...
si tu mets dans ta feuille une valeur
oups en "a1" de la feuil1 bien entendu
Salutations
Gilbert
"yan" <xyz@wanadoo.fr> a écrit dans le message de news:
431078f6$0$5391$8fcfb975@news.wanadoo.fr...
Salut
C'est sur et j'en serai bien incapable
J'ai donc testé ,et j'ai mis toute ta procédure dans un module
Cela fonctionne parfaitement bien
J'ai mis ma petite procédure ,(qui faisait apparaître une msgbox) dans
le même module
Et j'ai remplacé mon instruction msgbox......... par
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc1, 0,
GetCurrentThreadId)
MsgBox " msgbox 2 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
en affectant dans "Private Function WinProc1" les valeurs pour afficher
la msgbox au bon endroit
jusque la pas de pb
Mais a la place de " msgbox 2 Spéciale !" je voudrais faire apparaître
la valeur d'une variable numérique que j'ai appelé total dans ma proc
mais si je fais cela Excel ce ferme avec une fenêtre me disant que Excel
a rencontré un problème
C'est peut-être parce que je mets du numérique a la place du texte
que dois-je modifier
A+
yan
"RGI" <RGI@wanadoo.fr> a écrit dans le message de news:
431062e4$0$1724$8fcfb975@news.wanadoo.fr...
Tu verras que c' est moins difficile de s'en servir que de la créer
Salutations
Gilbert
"yan" <xyz@wanadoo.fr> a écrit dans le message de news:
431059e6$0$17238$8fcfb975@news.wanadoo.fr...
Salut
Ah oui c'est simple!!
Pour un non initié je trouve ça énorme, Mais je vais essayé de
l'utiliser.
Je mets cette proc dans un module?
Merci de m'avoir répondu
A+
yan
"RGI" <RGI@wanadoo.fr> a écrit dans le message de news:
43103d81$0$17211$8fcfb975@news.wanadoo.fr...
Bonjour
il y a ceci
Private Declare Function UnhookWindowsHookEx Lib "user32" _
(ByVal hHook As Long) As Long
Private Declare Function GetCurrentThreadId Lib "kernel32" () 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 SetWindowPos Lib "user32" (ByVal hwnd As
Long _
, ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long _
, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
Private lgHook As Long
Sub Positionned_MsgBox()
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc, 0,
GetCurrentThreadId)
MsgBox " msgbox1 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc1, 0,
GetCurrentThreadId)
MsgBox " msgbox 2 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc2, 0,
GetCurrentThreadId)
MsgBox " msgbox 3 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc3, 0,
GetCurrentThreadId)
MsgBox " msgbox 4 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
End Sub
Private Function WinProc(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc = False
End Function
Private Function WinProc1(ByVal lMsg As Long, ByVal wParam As Long)
As Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc1 = False
End Function
Private Function WinProc2(ByVal lMsg As Long, ByVal wParam As Long)
As Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc2 = False
End Function
Private Function WinProc3(ByVal lMsg As Long, ByVal wParam As Long)
As Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc3 = False
End Function
salutaions
Gilbert
"jps" <adresse@ntiscud> a écrit dans le message de news:
e8m8LztqFHA.3160@TK2MSFTNGP14.phx.gbl...
oups pardon, yan, tu as dit "positionner"...moi, j'ai le chic pour
lire la
question APRES y avoir répondu
jps (qui ne voit pas comment faire non plus)
"yan" <xyz@wanadoo.fr> a écrit dans le message de
news:4310054b$0$1022$8fcfb975@news.wanadoo.fr...
Bonjour a toutes et tous
Y a t-il une façon simple( très simple) de positionner une "msgbox"
dans
la
feuille courante.
J'ai trouvé un exemple sur excelabo qui m'a parut très compliqué
pour un
néophyte tel que moi
MERCI
A+
yan
Salut
j'ai fait ce que tu m'as dit ça marche
Mais quand je remplace
msg = Range("a1").Value par
msg = total + totalcrédit - totaldébit qui est le résultat d'un calcul ça
plante
Et la je viens de me rendre compte d'une chose surprenante si le nombre
est supérieur a 5 caractères,point décimal compris ça plante
inférieur a 6 caractères c'est bon
exemple
10000 bon
100000 pas bon
326.12 pas bon
326.1 bon
3.213 bon
que ce passe t-il
cela est très mystérieux pour moi
tu as une idée
Moi arrête pour ce soir ça me prend la tête je lire un peu
bonsoir
A+
yan
"RGI" a écrit dans le message de news:
431082b6$0$17203$si tu mets dans ta feuille une valeur
oups en "a1" de la feuil1 bien entendu
Salutations
Gilbert
"yan" a écrit dans le message de news:
431078f6$0$5391$Salut
C'est sur et j'en serai bien incapable
J'ai donc testé ,et j'ai mis toute ta procédure dans un module
Cela fonctionne parfaitement bien
J'ai mis ma petite procédure ,(qui faisait apparaître une msgbox) dans
le même module
Et j'ai remplacé mon instruction msgbox......... par
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc1, 0,
GetCurrentThreadId)
MsgBox " msgbox 2 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
en affectant dans "Private Function WinProc1" les valeurs pour afficher
la msgbox au bon endroit
jusque la pas de pb
Mais a la place de " msgbox 2 Spéciale !" je voudrais faire apparaître
la valeur d'une variable numérique que j'ai appelé total dans ma proc
mais si je fais cela Excel ce ferme avec une fenêtre me disant que Excel
a rencontré un problème
C'est peut-être parce que je mets du numérique a la place du texte
que dois-je modifier
A+
yan
"RGI" a écrit dans le message de news:
431062e4$0$1724$Tu verras que c' est moins difficile de s'en servir que de la créer
Salutations
Gilbert
"yan" a écrit dans le message de news:
431059e6$0$17238$Salut
Ah oui c'est simple!!
Pour un non initié je trouve ça énorme, Mais je vais essayé de
l'utiliser.
Je mets cette proc dans un module?
Merci de m'avoir répondu
A+
yan
"RGI" a écrit dans le message de news:
43103d81$0$17211$Bonjour
il y a ceci
Private Declare Function UnhookWindowsHookEx Lib "user32" _
(ByVal hHook As Long) As Long
Private Declare Function GetCurrentThreadId Lib "kernel32" () 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 SetWindowPos Lib "user32" (ByVal hwnd As
Long _
, ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long _
, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
Private lgHook As Long
Sub Positionned_MsgBox()
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc, 0,
GetCurrentThreadId)
MsgBox " msgbox1 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc1, 0,
GetCurrentThreadId)
MsgBox " msgbox 2 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc2, 0,
GetCurrentThreadId)
MsgBox " msgbox 3 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
lgHook = SetWindowsHookEx(&H5, AddressOf WinProc3, 0,
GetCurrentThreadId)
MsgBox " msgbox 4 Spéciale !", vbInformation + vbOKOnly, Space(15) &
"Test"
End Sub
Private Function WinProc(ByVal lMsg As Long, ByVal wParam As Long) As
Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc = False
End Function
Private Function WinProc1(ByVal lMsg As Long, ByVal wParam As Long)
As Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 50
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc1 = False
End Function
Private Function WinProc2(ByVal lMsg As Long, ByVal wParam As Long)
As Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 50
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc2 = False
End Function
Private Function WinProc3(ByVal lMsg As Long, ByVal wParam As Long)
As Long
'
If lMsg = 5 Then
'remplacer les valeurs ci dessous par les valeurs désirées
vertical = 250
horizontal = 550
SetWindowPos wParam, 0, horizontal, vertical, 0, 0, &H15
UnhookWindowsHookEx lgHook
End If
WinProc3 = False
End Function
salutaions
Gilbert
"jps" a écrit dans le message de news:oups pardon, yan, tu as dit "positionner"...moi, j'ai le chic pour
lire la
question APRES y avoir répondu
jps (qui ne voit pas comment faire non plus)
"yan" a écrit dans le message de
news:4310054b$0$1022$Bonjour a toutes et tous
Y a t-il une façon simple( très simple) de positionner une "msgbox"
dans
lafeuille courante.
J'ai trouvé un exemple sur excelabo qui m'a parut très compliqué
pour un
néophyte tel que moi
MERCI
A+
yan