Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2016 If msgbox-vbYesNo- dans boucle if

MatthieuG

XLDnaute Nouveau
Bonjour,

J'ai besoin de vos lumières concernant un problème que j'ai sur une boucle if à l'intérieur d'une autre...

Petit à petit j'ai créé ma boucle MsgBox qui fonctionne lorsque je clique sur un bouton.
J'ai ajouté mes conditions "Range" par la suite. Peu importe le résultat de mes conditions, le code va directement au dernier End if.

VB:
If (Range("B9)") <> "" & Range("B4") > Range("B9") Then

If MsgBox ("Avez vous remplacé la cassette périmée ?" & Chr(13) & Chr(10) & "Si non indiquez pourquoi en commentaire", vbYesNo) = vbNo Then
Exit Sub
Else
End if

End if

Il s'agit peut être d'une broutille à modifier mais pour moi la boucle de base est cohérente If "les range..." Then "If mon MsgBox qui fonctionne" End if

Merci d'avance pour votre aide,

Matthieu
 

soan

XLDnaute Barbatruc
Inactif
Bonjour Matthieu,

VB:
  If [B9] <> "" And [B4] > [B9] Then
    If MsgBox("Avez vous remplacé la cassette périmée ?" & vbLf & "Si non indiquez pourquoi en commentaire", vbYesNo) = vbNo Then
      Exit Sub
    End If
  Else
    'suite du code VBA pour la condition sinon
  End If

autre possibilité :

VB:
  If [B9] <> "" And [B4] > [B9] Then
    If MsgBox("Avez vous remplacé la cassette périmée ?" & vbLf _
      & "Si non indiquez pourquoi en commentaire", vbYesNo) = vbNo Then Exit Sub
  Else
    'suite du code VBA pour la condition sinon
  End If

soan
 

soan

XLDnaute Barbatruc
Inactif
@Matthieu, (salut patrick)

instruction erronée de Matthieu :

If (Range("B9)") <> "" & Range("B4") > Range("B9") Then

même en remplaçant & par And, ça ne peut pas marcher,
car parenthèse droite en trop entre 9 et le guillemet.



instruction corrigée :

If Range("B9") <> "" And Range("B4") > Range("B9") Then

(j'ai aussi enlevé la paire de parenthèses superflue)

soan
 
Dernière édition:

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…