Excel " Langage VBA "
Résolu
kikou93
Messages postés
438
Statut
Membre
-
kikou93 Messages postés 438 Statut Membre -
kikou93 Messages postés 438 Statut Membre -
Bonjour ou Bonsoir,
Je suis nouveau dans le langage VBA de excel.
J'ai Crée un macro qui demande de tapez une valeur inferieur a 16 (photo 1)

, si je tape la valeur 16 ou plus il me montre la boîte dialogue suivante (photo 2).

Mon problème et le suivant :
Je veux quand je clique sur Recommencer il me remonte la premier boîte dialogue (photo 1) jusqu'à que je tape une valeur inférieur à 16.
Quand je clique sur "Annuler" la boîte dialogue disparaît simplement.
Voici le macro que j'ai écrit :
-------------------------------------------------------------------------------------------
Sub Tapez()
Dim resultat As Byte
resultat = InputBox("Le nombre maximum de Travée est de 15", "Nombres de Travées", "Taper ici le Nombres de Travées")
If resultat < "16" Then
Range("B2") = resultat
ElseIf MsgBox("Faux", vbRetryCancel + vbDefaultButton1, "Erreur") = bRetry Then
End If
End Sub
-------------------------------------------------------------------------------------------
je ne sais pas si mes explications sont bonnes mais veuillez m'aider s'il vous plaît merci d'avance.
Je suis nouveau dans le langage VBA de excel.
J'ai Crée un macro qui demande de tapez une valeur inferieur a 16 (photo 1)

, si je tape la valeur 16 ou plus il me montre la boîte dialogue suivante (photo 2).

Mon problème et le suivant :
Je veux quand je clique sur Recommencer il me remonte la premier boîte dialogue (photo 1) jusqu'à que je tape une valeur inférieur à 16.
Quand je clique sur "Annuler" la boîte dialogue disparaît simplement.
Voici le macro que j'ai écrit :
-------------------------------------------------------------------------------------------
Sub Tapez()
Dim resultat As Byte
resultat = InputBox("Le nombre maximum de Travée est de 15", "Nombres de Travées", "Taper ici le Nombres de Travées")
If resultat < "16" Then
Range("B2") = resultat
ElseIf MsgBox("Faux", vbRetryCancel + vbDefaultButton1, "Erreur") = bRetry Then
End If
End Sub
-------------------------------------------------------------------------------------------
je ne sais pas si mes explications sont bonnes mais veuillez m'aider s'il vous plaît merci d'avance.
A voir également:
- Excel " Langage VBA "
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Déplacer colonne excel - Guide
- Si ou excel - Guide
- Excel compter cellule couleur sans vba - Guide
1 réponse
Bonsoir,
Essaie ça :
m@rina
Essaie ça :
Dim Reponse
Do
Reponse = InputBox("Le nombre maximum de Travée est de 15", "Nombres de Travées", "Taper ici le Nombres de Travées")
If Reponse = "" Then Exit Sub
If Reponse > 16 Then
Reponse = InputBox("Mauvaise réponse, Le nombre maximum est 15, essayez encore")
If Reponse = "" Then Exit Sub
End If
[A1] = Reponse
Loop Until Reponse < 16
m@rina
Merci beaucoup pour votre réponse
Votre réponse est-il utile mais elle n'a pas marché comme je le voulais.
J'ai créé ce macro maman normalement il est juste, car tant que je ne tape pas une valeurs inférieur à 15 il répète en boucle les 2 boîtes de dialogues.
Le macro :
Sub Tapez()
Dim resultat As Byte
resultat = InputBox("Le nombre maximum de Travée est de 15", "Nombres de Travées", "Taper ici le Nombres de Travées")
If resultat < 16 Then
Range("B2") = resultat
End If
While resultat > 15
resultat = MsgBox("Faux", vbRetryCancel + vbCritical + vbDefaultButton1, "Erreur") = bRetry
resultat = InputBox("Le nombre maximum de Travée est de 15", "Nombres de Travées", "Taper ici le Nombres de Travées")
Wend
Range("B2") = resultat
End Sub
Remarque :
Sans vouloir te déranger tu n'as pas un site ou un livre qui apprend la programmation des macros .
merci encore pour votre réponse