Avoir deux questions de type vbYesNo dans une macro

Sly

XLDnaute Nouveau
Bonsoir à tous,
je suis un petit nouveau sur le forum et je sent que je vais trouver pas mal de réponses!

Voilà mon problème: depuis quelques années je m'occupe du suivie d'un parc d'automates dans un labo, je dois donc relever toutes les erreurs et je commence à saturer!
En gros j'aimerai bien automatiser tout ça et je découvre les macro et le fameux langage VBA!

Pour commencer j'ai mixer des actions faite en faisant simplement "enregistrer une macro" puis en regardant ce qu'il se passe dans le "pas à pas détaillé", puis j'ai ajouté des paramètres trouvé sur le net comme le MessagBox et le InputBox.

Mais maintenant je bloc car je ne connais malheureusement pas du tout le langage...

Grosso modo ce que je veut faire:
j'ai le haut d'un tableau de B4 à E4, je veut ensuite remplir le tableau qui se prolongera vers le bas en:
- créant la mise en forme des bordures
- répondant à 4 questions (date/erreur/code/action corrective)
- ensuite je pose une question vbYesNo pour relancer tout simplement la macro si besoin (j'imagine qu'il doit-y avoir encore moins compliquer),
- pour finir j'aimerai poser une autre question pour colorer la ligne qui viens de se créer (B6;E6) pour différencier deux types d'actions (action maison ou action SAV)

Mon problème: cf. Classeur2 (j'ai recréer le fichier chez moi à partir d'Excel 2007 alors que je boss avec la version 2003)
- mise en forme, 4 question, et relance de la macro, OK! :p
- deuxième question qui ne passe pas... j'ai toujours le message d'erreur ''Bloc If sans End If"
Déjà j'ai bataillé pour ma première question mais là j'ai même pas une idée :mad:
EDIT: mauvais fichier joins initialement...

Pour la suite je crois que je vais viser les USEFORM mais j'attendrai de plus comprendre les bases!

J'attend vos critiques et peut être vos réponses pour m'aider!
 

Pièces jointes

  • Classeur2.xls
    34 KB · Affichages: 72
  • Classeur2.xls
    34 KB · Affichages: 69
  • Classeur2.xls
    34 KB · Affichages: 76
Dernière édition:

fhoest

XLDnaute Accro
Re : Avoir deux questions de type vbYesNo dans une macro

Bonsoir,
je n'ai pas regarder ta macro car je n'ai plus le temps ce soir,mais pour une demande de reponse a un message il faut faire comme ceci:
Code:
dim reponse as integer
reponse=msgbox"hello",vbyesno
if reponse=vbyes then
 msgbox "bonjour"
else:
msgbox"morgen"
end if
pour le ptit exemple.
A+:eek:
 

Fred0o

XLDnaute Barbatruc
Re : Avoir deux questions de type vbYesNo dans une macro

Bonsoir Sly, fhoest.

Bon, moi j'ai regardé la macro rapidement et un peu simplifiée. J'ai enleva le code qui servait à rien et un peu réorganisé les instructions.

Voir le fichier joint.

A+
 

Pièces jointes

  • Sly_V1.xls
    35 KB · Affichages: 66

bérylion

XLDnaute Occasionnel
Re : Avoir deux questions de type vbYesNo dans une macro

Bonsoir,
je n'ai pas regarder ta macro car je n'ai plus le temps ce soir,mais pour une demande de reponse a un message il faut faire comme ceci:
Code:
dim reponse as integer
reponse=msgbox"hello",vbyesno
if reponse=vbyes then
 msgbox "bonjour"
else:
msgbox"morgen"
end if
pour le ptit exemple.
A+:eek:

Salut

on peut faire plus simple :

Code:
Sub MsgTest()
Select Case MsgBox("cliquer sur " & """" & "OUI" & """" & " ou sur " & """" & "NON" & """", vbYesNo)
    Case vbYes: MsgBox "vous avez cliquez sur " & """" & "OUI" & """"
    Case vbNo: MsgBox "vous avez cliquez sur " & "" & "NON" & """"
End Select
End Sub
 

bérylion

XLDnaute Occasionnel
Re : Avoir deux questions de type vbYesNo dans une macro

Bonsoir Sly, fhoest.

Bon, moi j'ai regardé la macro rapidement et un peu simplifiée. J'ai enleva le code qui servait à rien et un peu réorganisé les instructions.

Voir le fichier joint.

A+

Salut

pour le "sport" on peut simplifier à l'extreme, avec la réponse aux 2 questions :

Code:
Sub Nvl_er()
'
' Nvl_er Macro
' Macro enregistrée le 31/03/2011 par Sylvain
'
' Touche de raccourci du clavier: Ctrl+t
'
Qst = Array("Date de l'erreur", "Erreur relevée:", "Code erreur:", "Action corrective")
Do
    Rows("5:5").Insert Shift:=xlDown
    For i% = LBound(Qst) To UBound(Qst)
        With Cells(5, i + 2)
            With .Borders
                .LineStyle = xlContinuous
                .Weight = xlMedium
            End With
            .Value = InputBox(Qst(i))
        End With
    Next
    With Range("B5:E5").Interior
        .ThemeColor = MsgBox("Y a-t-il eu une action du SAV?", vbYesNo)
        .TintAndShade = Choose(.ThemeColor - 5, 0.399945066682943, 0.599963377788629)
    End With
Loop While MsgBox("Voulez vous signaler d'autres erreurs?", vbYesNoCancel) = vbYes
End Sub
 
Dernière édition:

Sly

XLDnaute Nouveau
Re : Avoir deux questions de type vbYesNo dans une macro

Bon ben il y en a des rapides ici!

Pour commencer j'avais partiellement réussi en jouant avec le ELSE
Mais Fo_rum m'a maché le travail!

Merci à tous pour vos réponses
Maintenant je vais faire plus compliqué!
 

Statistiques des forums

Discussions
298 001
Messages
1 965 029
Membres
200 809
dernier inscrit
Ksiba