Bonjour,
Je me tourne vers vous car je souhaiterai perfectionner un petit outil que j'ai réalisé sur Excel, mais je n'ai aucune idée de la manière.
J'ai conçu un questionnaire (132 questions) dont les réponses sont "Oui", "Non", "Sans Objet" sous forme d'"OptionButton" (par conséquent 3 par question donc 396 "OptionButton").
En fonction de la réponse, deux "ComboBox" apparaissent avec un Contenu (une analyse et une préconisation donc 264 "ComboBox"au total) .
A la suite de cela, j'ai inséré une "CheckBox", qui permet de transferer le contenu des "ComboBox" vers d'autres pages (que j'ai intitulé fiches de constats) il y à donc 132 "CheckBox".
Je souhaiterai disposer d'un bouton (par exemple) qui me permettrai de selectionner ou déselectionner l'ensemble des CheckBox (pour éviter de cliquer 132 fois...)
De plus je souhaiterai pouvoir faire la même chose avec les "OptionButton" correspondant à la reponse "Sans Objet".
N'étant pas trés "BON" pour le langage VBA, j'ai rédiger le code suivant:
J'ai répété ce code 132 fois pour les 132 questions (ce fut un peu long et redondant)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85 Option Explicit Private Sub CheckBox1_Change() 'Si la checkbox est cochée If CheckBox1.Value = True Then 'Si le optionbutton3 est sélectionné If OptionButton3.Value = False Then Sheets("Fiche de constat 1").Range("E7") = ComboBox1.Value Sheets("Fiche de constat 1").Range("H7") = ComboBox2.Value Else 'Si le optionbutton3 n'est pas sélectionné (donc un des 2 autres l'est) Sheets("Fiche de constat 1").Range("E7") = Sheets("Trame p1").Range("G3") Sheets("Fiche de constat 1").Range("H7") = Sheets("Trame p1").Range("H3") End If Else 'Si la checkbox est décochée Sheets("Fiche de constat 1").Range("E7") = "" Sheets("Fiche de constat 1").Range("H7") = "" End If If CheckBox1.Value = True Then Sheets("Tableau récapitulatif NC").Range("A3") = Sheets("fiche de constat 1").Range("I8") Sheets("Tableau récapitulatif NC").Range("B3") = Sheets("fiche de constat 1").Range("F7") Sheets("Tableau récapitulatif NC").Range("C3") = Sheets("fiche de constat 1").Range("H7") Sheets("Tableau récapitulatif NC").Range("D3") = Sheets("fiche de constat 1").Range("E4") Sheets("Tableau récapitulatif NC").Range("E3") = Sheets("fiche de constat 1").Range("L7") Else Sheets("Tableau récapitulatif NC").Range("A3") = "" Sheets("Tableau récapitulatif NC").Range("B3") = "" Sheets("Tableau récapitulatif NC").Range("C3") = "" Sheets("Tableau récapitulatif NC").Range("D3") = "" Sheets("Tableau récapitulatif NC").Range("E3") = "" End If End Sub Private Sub OptionButton1_Click() 'Suppression du contenu des Combobox ComboBox1.Value = "" ComboBox2.Value = "" Range("G3") = "" Range("H3") = "" 'Définition des plages de données à afficher dans les combobox ComboBox1.ListFillRange = "SIPE5!B7:B40" ComboBox2.ListFillRange = "SIPE5!D7:D40" 'affichage des combobox ComboBox1.Visible = True ComboBox2.Visible = True End Sub Private Sub OptionButton2_Click() 'Suppression du contenu des Combobox et des cellules ComboBox1.Value = "" ComboBox2.Value = "" Range("G3") = "" Range("H3") = "" 'Définition des plages de données à afficher dans les combobox ComboBox1.ListFillRange = "" ComboBox2.ListFillRange = "" 'affichage des combobox ComboBox1.Visible = True ComboBox2.Visible = True End Sub Private Sub OptionButton3_Click() 'Suppression du contenu des Combobox ComboBox1.Visible = False ComboBox2.Visible = False 'On affiche un message dans la cellule G3 Range("G3") = "Sans objet" 'On affiche un message dans la cellule H3 Range("H3") = "Sans objet" End Sub
Pouvez vous m'aider
Partager