je suis en train de créer un formulaire pour le travail
sur le 1er onglet : je demande les informations générales des clients
sur le 2eme onglet : la personne devra sélectionner les articles dont elle a besoin
Je souhaiterais une macro VBA qui permette :
1 - de vérifier que toutes les infos générales soient bien saisies (en gros qu'il ne reste pas de "'/") => s'il manque des infos, une boite à message s'affiche
2 - si c'est bien saisi, de pouvoir accéder au 2eme onglet
Cette macro sera ajoutée en bas du 1er onglet
pour l'instant voici ce que j'ai pu écrire niveau VBA (je n'ai aucune formation VBA...)
Sub Verif()
'macro vérif saisie'
If Range("C7") = "/" And Range("H7") = "/" And Range("C10") = "/" And Range("C12") = "/" And Range("C18") = "/" And Range("G18") = "/" And Range("C20") = "/" And Range("G20") = "/" Then
Bonjour MG, et bienvenu sur XLD,
En utilisant un ET vous émettrez un message si TOUTES les cellules contiennent "/".
En faisant :
VB:
If Range("C7") = "/" Or Range("H7") = "/" Or Range("C10") = "/" Or Range("C12") = "/" Or Range("C18") = "/" Or Range("G18") = "/" Or Range("C20") = "/" Or Range("G20") = "/" Then
vous émettrez un message si une ou plusieurs les cellules contiennent "/".
Bonjour MG, et bienvenu sur XLD,
En utilisant un ET vous émettrez un message si TOUTES les cellules contiennent "/".
En faisant :
VB:
If Range("C7") = "/" Or Range("H7") = "/" Or Range("C10") = "/" Or Range("C12") = "/" Or Range("C18") = "/" Or Range("G18") = "/" Or Range("C20") = "/" Or Range("G20") = "/" Then
vous émettrez un message si une ou plusieurs les cellules contiennent "/".
Si des informations sont manquantes, je souhaite que le reste des macro ne s'active pas.
existe il un moyen pour ça ? En gros je veux forcer l'utilisateur à remplir correctement la partie info pour qu'il accède ensuite à l'onglet demande.
Merci
Sub Verif()
If Range("C7") = "/" Or Range("H7") = "/" Or Range("C10") = "/" Or Range("C12") = "/" Or Range("C18") = "/" Or Range("G18") = "/" Or Range("C20") = "/" Or Range("G20") = "/" Then
MsgBox "Des informations sont manquantes !"
Else: Call Feuille_suivante
End If
End Sub
Sub Feuille_suivante()
Worksheets("Demande").Visible = True
Worksheets("Demande").Activate
End Sub
Sub Envoi_demande()
Call Verif
Call Feuille_suivante
End Sub
Re,
Si j'ai bien compris une seule macro suffit.
En l'appelant on vérifie la présence d'un "/". S'il n'y en a, on sort sinon on continue.
Et au lieu d'appeler Envoi_demande vous appelez Verif.
VB:
Sub Verif()
If Range("C7") = "/" Or Range("H7") = "/" Or Range("C10") = "/" Or Range("C12") = "/" Or Range("C18") = "/" Or Range("G18") = "/" Or Range("C20") = "/" Or Range("G20") = "/" Then
MsgBox "Des informations sont manquantes !" & Chr(10) & "Veuillez les compléter."
Else
Worksheets("Demande").Visible = True
Worksheets("Demande").Activate
End If
End Sub
Re,
Si j'ai bien compris une seule macro suffit.
En l'appelant on vérifie la présence d'un "/". S'il n'y en a, on sort sinon on continue.
Et au lieu d'appeler Envoi_demande vous appelez Verif.
VB:
Sub Verif()
If Range("C7") = "/" Or Range("H7") = "/" Or Range("C10") = "/" Or Range("C12") = "/" Or Range("C18") = "/" Or Range("G18") = "/" Or Range("C20") = "/" Or Range("G20") = "/" Then
MsgBox "Des informations sont manquantes !" & Chr(10) & "Veuillez les compléter."
Else
Worksheets("Demande").Visible = True
Worksheets("Demande").Activate
End If
End Sub