'### Constantes à adapter ###
Const MY_URL As String = "https://www.hsbc.fr/1/2/hsbc-france/particuliers/login"
Const IDENTIFIANT As String = "1234567890"
Const PIN As String = "987654"
Const DELAI As Long = 100 'millisecondes
'############################
Private Declare Sub keybd_event Lib "user32.dll" ( _
  ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Const VK_F7 = &H76
Const VK_TAB = &H9
Const VK_RETURN = &HD
Const KEYEVENTF_KEYUP = &H2
Sub PiloterInternet()
Dim IE As Object  'SHDocVw.InternetExplorer
Set IE = CreateObject("InternetExplorer.Application")
With IE
  .Silent = False
  .Navigate MY_URL
  Do Until .ReadyState = 4
    DoEvents
  Loop
  .Visible = True
  .document.all("cel").Click
  .document.all("Ident").Value = IDENTIFIANT
  .document.forms("PC_7_1_9LD_registrationForm").submit
  Do Until .ReadyState = 4
    DoEvents
  Loop
  keybd_event VK_F7, 0, 0, 0
  keybd_event VK_F7, 0, KEYEVENTF_KEYUP, 0
  Sleep DELAI
  keybd_event VK_RETURN, 0, 0, 0
  keybd_event VK_RETURN, 0, KEYEVENTF_KEYUP, 0
  Sleep DELAI * 4
  Do Until .ReadyState = 4
    DoEvents
  Loop
  On Error Resume Next
  .document.all("PBN").Value = IDENTIFIANT
  .document.all("PIN").Value = PIN
  On Error GoTo 0
  Do Until .ReadyState = 4
    DoEvents
  Loop
  Sleep DELAI * 5
  keybd_event VK_TAB, 0, 0, 0
    keybd_event VK_TAB, 0, KEYEVENTF_KEYUP, 0
  Sleep DELAI
  keybd_event VK_TAB, 0, 0, 0
    keybd_event VK_TAB, 0, KEYEVENTF_KEYUP, 0
  Sleep DELAI
  keybd_event VK_TAB, 0, 0, 0
    keybd_event VK_TAB, 0, KEYEVENTF_KEYUP, 0
  Sleep DELAI
  keybd_event VK_TAB, 0, 0, 0
    keybd_event VK_TAB, 0, KEYEVENTF_KEYUP, 0
  Sleep DELAI
  keybd_event VK_RETURN, 0, 0, 0
  keybd_event VK_RETURN, 0, KEYEVENTF_KEYUP, 0
End With
Set IE = Nothing
End Sub