Double condition macro excel

Résolu
Bonsoir,

La plage (E16 : E25) est nommée Croix_Paiement
La plage (F16 : F25) est nommée Type_Paiement

Si en E16 se trouve une croix : x
Et Si F16 est : vide
J'aimerai que s'affiche une boite de dialogue qui précise qu'il faut saisir le type de paiement.
Et cela jusqu'aux cellules E25 et F25

D E F
Montant Type de paiement
16 6,00 € x Chq
17 5,50 € x
18
19
20
21
22
23
24
25

Je ne sais pas si c'est bien d'avoir nommé les 2 plages.
Je pense qu'il faut faire des boucles mais je ne sais pas comment déclarer mes valeurs et faire les boucles.
J'ai essayé ça mais il semble y avoir une erreur à partir de Croix_Paiement = c
Pour la suite je ne sais pas si c'est bon car il arrête la macro

Sub ControlePaiement()
Dim Type_Paiement As Range
Dim Croix_Paiement As Range
Croix_Paiement = c
Type_Paiement = t

If c.Value = "x" And t.Value = "" Then
MsgBox "Saisir le type de paiement"

End If
End Sub

Si quelqu'un peut m'aider car je progresse petit à petit mais il semble que je sois encore loin du compte !
Je vous remercie d'avance de votre attention.
Bonne nuit
Evelyne

4 réponses

  1. Salut Myta,
    Je viens de tester ta ligne de code, c'est impeccable
    Merci beaucoup

    Evelyne
    0
    1. Contributeur
      Re le forum

      Essaye en remplaçant :
      For Each C In [Type_Paiement]
      par
      For Each C In Range("E16:E25")

      Mytå
      0
      1. Bonsoir Myta,
        Je viens d'essayer ta macro mais il semble que cela ne fonctionne pas.
        Pourtant ce que tu as écris me semble logique mais je ne m'y connais pas assez.
        Je te remercie cependant d'avoir répondu à ma demande.
        Bonne nuit,
        Evelyne
        0
        1. Contributeur
          Salut le forum

          Un essai vite fait

          Sub ControlePaiement()
          Dim C As Range
          
          For Each C In [Type_Paiement]
            If UCase(C) = "X" And C.Offset(0, 1) = "" Then
              MsgBox "Saisir le type de paiement"
              Exit Sub
            End If
          Next C
          End Sub
          

          Mytå
          0