Hello,
sinon au lieu d'utiliser un Sendkeys on peut utiliser l'api Windows keybd_event :
#If VBA7 Then
Private Declare PtrSafe Sub keybd_event Lib "user32" ( _
ByVal bVk As Byte, _
ByVal bScan As Byte, _
ByVal dwFlags As Long, _
ByVal dwExtraInfo As LongPtr)
#Else
Private Declare Sub keybd_event Lib "user32" ( _
ByVal bVk As Byte, _
ByVal bScan As Byte, _
ByVal dwFlags As Long, _
ByVal dwExtraInfo As Long)
#End If
Private Const VK_MENU As Byte = &H12
Private Const VK_DOWN As Byte = &H28
Private Const KEYEVENTF_KEYUP As Long = &H2
Private Sub SendAltDown()
keybd_event VK_MENU, 0, 0, 0
keybd_event VK_DOWN, 0, 0, 0
keybd_event VK_DOWN, 0, KEYEVENTF_KEYUP, 0
keybd_event VK_MENU, 0, KEYEVENTF_KEYUP, 0
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address = "$C$15195" Then
'SendKeys "%{DOWN}"
SendAltDown
End If
End Sub
Ami calmant, J.P