Help VBA
Résolu/Fermé
vulcasquale
Messages postés
1
Date d'inscription
vendredi 12 juin 2015
Statut
Membre
Dernière intervention
12 juin 2015
-
12 juin 2015 à 14:12
Vulcasquale - 15 juin 2015 à 16:45
Vulcasquale - 15 juin 2015 à 16:45
2 réponses
Frenchie83
Messages postés
2240
Date d'inscription
lundi 6 mai 2013
Statut
Membre
Dernière intervention
11 août 2023
338
13 juin 2015 à 06:36
13 juin 2015 à 06:36
Bonjour
Cdlt
Private Sub Worksheet_calculate() Dim result As String If [H16] = "Autres" Then result = InputBox("question 7 vous avez répondu Autres pouvez vous précisez") If result <> "" Then [I16] = result End If If [H18] = "Autres" Then result = InputBox("question 8 vous avez répondu Autres pouvez vous précisez") If result <> "" Then [I18] = result End If If [H20] = "Autres" Then result = InputBox("question 9 vous avez répondu Autres pouvez vous précisez") If result <> "" Then [I20] = result End If If [H22] = "Autres" Then result = InputBox("question 10 vous avez répondu Autres pouvez vous précisez") If result <> "" Then [I22] = result End If If [H24] = "Autres" Then result = InputBox("question 11 vous avez répondu Autres pouvez vous précisez") If result <> "" Then [I24] = result End If End Sub
Cdlt
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 311
Modifié par michel_m le 14/06/2015 à 14:17
Modifié par michel_m le 14/06/2015 à 14:17
Bonjour
une autre manière par une macro événementielle: la macro de déclenche lorsque'on valide une saisie dans les cellules H16 ,H18 etc
Pour installer
1: faire un "copier" de ce code
2: clic droit sur le nom de l'onglet (en bas et à droite de la feuille)
3: visualiser le code
4: coller
La maquette
https://www.cjoint.com/c/EFomqikhMG5
Michel
une autre manière par une macro événementielle: la macro de déclenche lorsque'on valide une saisie dans les cellules H16 ,H18 etc
Option Explicit
Option Compare Text
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Num As Byte, Result
If Not Intersect(Target, Range("H16, H18, H20, H22, H24")) Is Nothing And Target.Count = 1 Then
If Target = "Autres" Then
Num = ((Target.Row - 16) / 2) + 7
Result = InputBox("question " & Num & " vous avez répondu Autres pouvez vous précisez")
If Result <> "" Then Target.Offset(1, 0) = Result
Else
Target.Offset(1, 0) = Target
End If
End If
End Sub
Pour installer
1: faire un "copier" de ce code
2: clic droit sur le nom de l'onglet (en bas et à droite de la feuille)
3: visualiser le code
4: coller
La maquette
https://www.cjoint.com/c/EFomqikhMG5
Michel
14 juin 2015 à 09:32
Malheureusement ça ne marche pas. Pour la première question c'est efficace mais après, pour les suivantes peut importe la réponse la boite de dialogue de la question initiale s'ouvre. Je n'arrive toujours pas à rendre indépendante les questions.
auriez-vous une autre proposition sous le coude??
Cordialement,
14 juin 2015 à 11:07
Rajouter ceci Option Compare Text en toute première ligne du module (avant toutes macros), ceci permet au programme de ne pas faire de distinction entre les minuscules et les majuscules.
Essayez
Cdlt
15 juin 2015 à 16:45
Je tenais à vous remercier pour cette proposition. Malheureusement, elle n'a pas marché mais une autre personne a trouvé une autre forme pour exécuter cette requête. Merci pour votre temps et votre aide.
Cordialement,