Message box

tocnic Messages postés 8 Date d'inscription   Statut Membre Dernière intervention   -  
tocnic Messages postés 8 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,


J'aimerai afficher un message à l'utilisateur "Etes-vous sûr de vouloir supprimer le client? avec deux réponses possibles
oui et non
clik sur oui : le client est effectivement supprimer,
clik sur non: le client n'est pas supprimer
j'ai tenté ce code mais vba m'indique une erreur de synthaxe

Quelqu'un peut-il m'expliquer ?

Private Sub Suppr_client_Click()


Dim rep As Long

rep = MsgBox("Etes-vous sûr de vouloir supprimer le client?", VbOKYes, "oui", VbOKNo, "non")

If rep = VbOKYes Then


ligne = 3
While Worksheets("Listedesclients").Cells(ligne, 1).Value <> listSupprimer_client.Value
ligne = ligne + 1
Wend
'La macro fait faire une boucle à partir de la deuxième ligne, 1ère colonne jusqu'à la nième ligne, 1ère colonne
'La boucle s'arrete lorsqu'elle retrouve dans le contenu de la cellule la même valeur que la va leur sélectionnée dans la liste
For J = 1 To 2
'Pour les colonnes allant de 1 à 2
Worksheets("listedesclients").Cells(ligne, J).Delete xlUp
'Supprime le contenu de la cellule située la ligne qui correspond à la
'valeur cherchée plus haut et décale vers le haut
End If rep = VbOKNo Then
Exit Sub

End Sub
A voir également:

4 réponses

chossette9 Messages postés 4239 Date d'inscription   Statut Contributeur Dernière intervention   1 311
 
Bonjour,

remplacer
End If rep = VbOKNo Then  
Exit Sub 
par
Else
Exit Sub  
End If


Cordialement.
Ce mec la n'était pas une lumière, car il était niais.
0
tocnic Messages postés 8 Date d'inscription   Statut Membre Dernière intervention  
 
Merci pour la réponse
un nouveau message d'erreur s'affiche cette fois et me dit "Else sans if"


Private Sub Suppr_client_Click()




Dim rep As Long

rep = MsgBox("Etes-vous sûr de vouloir supprimer le client?", VbOKYes, "oui", VbOKNo, "non")

If rep = VbOKYes Then


ligne = 3
While Worksheets("Listedesclients").Cells(ligne, 1).Value <> listSupprimer_client.Value
ligne = ligne + 1
Wend
'La macro fait faire une boucle à partir de la deuxième ligne, 1ère colonne jusqu'à la nième ligne, 1ère colonne
'La boucle s'arrete lorsqu'elle retrouve dans le contenu de la cellule la même valeur que la va leur sélectionnée dans la liste
For J = 1 To 2
'Pour les colonnes allant de 1 à 2
Worksheets("listedesclients").Cells(ligne, J).Delete xlUp
'Supprime le contenu de la cellule située la ligne qui correspond à la
'valeur cherchée plus haut et décale vers le haut
Else
Exit Sub
End If





End Sub
0
chossette9 Messages postés 4239 Date d'inscription   Statut Contributeur Dernière intervention   1 311
 
C'est ta boucle For qui pose problème, elle ne comporte pas de Next.
Mets un Next avant le else et ça devrait régler le problème.

Cordialement.
0
tocnic Messages postés 8 Date d'inscription   Statut Membre Dernière intervention  
 
il me met encore erreur de syntaxe en soulignant next else
0
chossette9 Messages postés 4239 Date d'inscription   Statut Contributeur Dernière intervention   1 311
 
Next et Else ne doivent pas être sur la même ligne.
Private Sub Suppr_client_Click() 

Dim rep As Long 

rep = MsgBox("Etes-vous sûr de vouloir supprimer le client?", VbOKYes, "oui", VbOKNo, "non") 

If rep = VbOKYes Then 
   ligne = 3 
   While Worksheets("Listedesclients").Cells(ligne, 1).Value <> listSupprimer_client.Value 
      ligne = ligne + 1 
   Wend 
'La macro fait faire une boucle à partir de la deuxième ligne, 1ère colonne jusqu'à la nième ligne, 1ère colonne 
'La boucle s'arrete lorsqu'elle retrouve dans le contenu de la cellule la même valeur que la va leur sélectionnée dans la liste 
   For J = 1 To 2 
'Pour les colonnes allant de 1 à 2 
      Worksheets("listedesclients").Cells(ligne, J).Delete xlUp 
'Supprime le contenu de la cellule située la ligne qui correspond à la 
'valeur cherchée plus haut et décale vers le haut 
   Next
Else 
   Exit Sub 
End If 

End Sub
0
tocnic Messages postés 8 Date d'inscription   Statut Membre Dernière intervention  
 
merci!
maintenant il me met incompatibilité de type en soulignant ça "rep = MsgBox("Etes-vous sûr de vouloir supprimer le client?", VbOKYes, "oui", VbOKNo, "non")"
=/
0
chossette9 Messages postés 4239 Date d'inscription   Statut Contributeur Dernière intervention   1 311
 
rep = MsgBox("Etes-vous sûr de vouloir supprimer le client?", vbYesNo)
;)

On va finir par y arriver ^^
0
chossette9 Messages postés 4239 Date d'inscription   Statut Contributeur Dernière intervention   1 311
 
Bonjour,

peux tu publier ton fichier ? si oui, dépose le sur cjoint.com, et copie le lien créé dans une réponse à cette discussion.

sans voir le fichier, difficile de dire pourquoi ça ne supprime pas ton client en question.

Cordialement.
0
tocnic Messages postés 8 Date d'inscription   Statut Membre Dernière intervention  
 
0
tocnic Messages postés 8 Date d'inscription   Statut Membre Dernière intervention  
 
la suppression du client marchait avant qu'on fasse des modifs

Cordialement.
0
tocnic Messages postés 8 Date d'inscription   Statut Membre Dernière intervention  
 
j'ai écrit Option Explicit
et il m'indique Instruction Incorrecte dans une procédure mais je n'arrive pas à voir d'où ça vient.
0