Comment intégrer une condition dans mon code sendkey

Bonjour le forum

Je rencontre un soucis avec mon code sendkeys.

En effet, le code me permet de renseigner automatiquement notre logiciel à partir des informations contenues dans une plage excel.

Le problème qui se pose est que le logiciel est fait de telle sorte que lorsque la valeur de la cellule D7=3 (ce qui signifie que c'est femme mariée), le logiciel demande le nom et prenom du mari mais lorsque D7 = 2 ou 4, le logiciel saute les champs reservés au nom et prenom du mari.

Puis que ma plage excel comporte en cellule D16 et D17, les cellules reservées au nom du mari.

Comment faire pour que lorsque la valeur en D7 = 3, il prenne en compte la valeur des cellules D16 et D17.

Mais si D7 est different de 3, il doit laisser les cellules D16 et D17 et aller directement à la cellule D18.

Je reste à votre disposition si pas clair chez vous.

Ci-joint le fichier.

Salut le forum

J'ai eu une piste que je voulais partager avec vous afin que vous puissiez mieux m'aider.

Comment intégrer le code ci-dessous dans le code du fichier joint?

J'ai essayé moi-même mais j'ai raté.

Dans ce code, c'est si D7 = 3 mais dans mon cas réel c'est si J8 = 3 qui doit être utilisée.

Le fichier joint est celui qui correspond à mon cas réel.

Il contient également le code que j'ai bidouillé et qui ne fonctionne pas.

Merci de voir svp.

For i = 3 To 44

    Select Case i
        Case 16, 17
            If Cells(7, 4).Value = 3 Then
                 SendKeys Cells(i, 4).Value, True
            End If
        Case Else
            SendKeys Cells(i, 4).Value, True
    End Select

    attendre 0.6
    SendKeys "~"
    attendre 1

Next

Salut Zombe

Voici un code possible

Sub activesimple()
  Dim I As Integer, MemJ8 As Integer
  'On Error GoTo gestionerreur
  If MsgBox("ASSUREZ-VOUS QUE VOTRE SESSION", vbYesNo, "Demande de confirmation") = vbYes Then

    AppActivate "ESSAI"
    MemD7 = ""
    'POSITIONNEZ-VOUS SUR LE MENU SIMPLIFIE IGOR SOUHAITE
    For I = 3 To 44
      ' Si I = 8 alor on mémorise la valeur de la cellule
      If I = 8 Then MemJ8 = range("J8").Value
      ' Si I = 16 ou 17
      If I = 16 Or I = 17 Then
        ' Si la veleur mémorisée est 3
        If MemJ8 = 3 Then
          ' On inscrit le nom et le prénom du mari
          SendKeys Cells(I, 4).Value, True
          attendre 0.6
          SendKeys "~"
          attendre 1
        End If
      Else
        ' Si I à une autre valeur que 16 ou 17
        SendKeys Cells(I, 4).Value, True
        attendre 0.6
        SendKeys "~"
        attendre 1
      End If
    Next

    SendKeys "+{F3}"
    attendre 1

    For I = 45 To 52
      SendKeys Cells(I, 4).Value, True
      attendre 0.6
      SendKeys "~"
      attendre 1
    Next
    SendKeys "+{F6}"
    attendre 1

    For I = 53 To 53
      SendKeys Cells(I, 4).Value, True
      attendre 0.6
      SendKeys "~"
      attendre 1
    Next

    Exit Sub
gestionerreur:
    MsgBox "fichier non ouvert ou réduit dans la barre des tâches : abandon"
  End If
End Sub

Sub attendre(sec%)
  Dim deb&, fin&
  deb = Timer
  fin = deb + sec%
  Do Until Timer >= fin
    DoEvents
  Loop
End Sub

A+

Salut BrunoM45

Votre code est trop cool.

Il répond parfaitement à mes attentes.

Si vous me permettez, je vais encore vous demander deux petits services :

1- Toujours dans le sens des conditions : le code ci-dessous me permet d’insérer N dans un champ de mon logiciel.

Je dois saisir N lorsque la 1ère lettre de la cellule B4 commence par P. Si c’est autre chose que P, on ne saisi pas N. on laisse la saisie continuer.

Je souhaiterai trouver une condition pour dire que lorsque la 1ère lettre de B4 est P, que cette partie du code s’exécute sinon qu’on passe au traitement suivant.

2- Serait-il possible de faire en sorte (intégrer code macro) qu’en appuyant sur la touche ESC, cela entraine l’arrêt de la macro (en cours d’exécution) ?

Pouvez-vous voir ces 2 points ?

Je vous remercie d’avance.

Next
    SendKeys "N" & Chr(13), True
    attendre 0.6
    SendKeys "{LEFT}"
    SendKeys "{ENTER}"
    attendre 1
Rechercher des sujets similaires à "comment integrer condition mon code sendkey"