Userform / liste déroulante inputbox
Hello,
J'ai crée un userform avec 4 bouton cliquable.
J'aimerais que quand l'utilisateur clique sur un des 4 boutons, cela enregistre la réponse texte dans une cellule, et que cela ferme le userform
Le pbm c'est que je ne sais pas comment m'y prendre pour que le clic sur le bouton soit enregistré, recopié puis fermer le user form
Faut il que je rajoute un inputbox?
Exemple : userform crée avec Quel dé? réponse 1 2 3 4 avec 4 boutons
Si clique sur 3 enregistrement de la réponse en A1 + fermeture de la fenetre
Merci
Salut Neophite77,
Il est bien de fournir un fichier pour être plus clair.
J'ai fais avec ce que j'ai compris.
Dis moi si ça te convient.
Cdt.
Hello, oui c'est parfait, en fait je n'avais pas mis le code dans le user form, mais directement dans la macro c'est pour ca...
Merci bcp
Par contre, mon userform est intégré dans une suite de box, et je suis placé à une certaine celulle. Comment je rentre la position de la celule? dans le code du userform? dans la macro?
Je n'ai pas vraiment compris, mais la destination doit être dans :
Private Sub CommandButton1_Click()
CommandButton1 sera remplacé par le nom que tu lui aura donné.
Cdt.
Private Sub ComboBox1_Change()
TextBox101 = ComboBox1
End Sub
Private Sub ComboBox2_Change()
TextBox102 = ComboBox2
End Sub
Private Sub ComboBox3_Change()
TextBox103 = ComboBox3
End Sub
Private Sub ComboBox4_Change()
TextBox104 = ComboBox4
End Sub
Private Sub CheckBox1_Click()
TextBox10 = "Envoyé"
End Sub
Private Sub CheckBox2_Click()
TextBox11 = "A Revoir"
End Sub
Private Sub CheckBox3_Click()
TextBox12 = "Programmé"
End Sub
Private Sub CheckBox4_Click()
TextBox13 = "Proposé"
End Sub
Private Sub CheckBox5_Click()
TextBox14 = "Oui"
End Sub
Private Sub CheckBox6_Click()
TextBox15 = "Non"
End Sub
Private Sub CheckBox7_Click()
TextBox16 = "Oui"
End Sub
Private Sub CheckBox8_Click()
TextBox17 = "Non"
End Sub
Private Sub CheckBox9_Click()
TextBox18 = "Oui"
End Sub
Private Sub CheckBox10_Click()
TextBox19 = "Non"
End Sub
Private Sub usf()
Dim L As Integer
Sheets("PlanComm").Select
If MsgBox("Etes-vous certain de vouloir inserer cette nouvelle com ?", vbYesNo, "Demande de confirmation") = vbYes Then
'Permet de se positionner sur la dernière ligne de tableau NON VIDE
L = Sheets("BASE DE DONNEES").Range("a65536").End(xlUp).Row + 1
Range("A" & L).Value = T
Range("B" & L).Value = TextBox1
Range("C" & L).Value = TextBox101
Range("D" & L).Value = TextBox102
Range("E" & L).Value = TextBox2
Range("F" & L).Value = TextBox3
Range("G" & L).Value = T
Range("H" & L).Value = TextBox4
Range("J" & L).Value = TextBox8
Range("K" & L).Value = TextBox9
Range("L" & L).Value = TextBox104
If IsEmpty(TextBox1) Then
Range("M" & L).Value = T
If IsEmpty(TextBox1) Then
Range("N" & L).Value = T
Range("O" & L).Value = TextBox103
Range("P" & L).Value = TextBox5
Range("R" & L).Value = TextBox6
Range("T" & L).Value = TextBox7
If IsEmpty(TextBox1) Then
Range("U" & L).Value = T
Range("i" & L).FormulaR1C1 = "=RC[-1]-RC[-2]"
End If
End Sub
Private Sub CommandButton2_Click()
Unload Me
End Sub
Private Sub Label13_Click()
End Sub
Private Sub UserForm_Initialize()
Dim i As Integer
Dim A As Integer
Dim B As Integer
Dim C As Integer
With Sheets("Données")
A = .Range("A" & .Rows.Count).End(xlUp).Row
For i = 1 To A
ComboBox1.AddItem .Range("A" & i)
Next
End With
With Sheets("Données")
B = .Range("B" & .Rows.Count).End(xlUp).Row
For i = 1 To B
ComboBox2.AddItem .Range("B" & i)
Next
End With
With Sheets("Données")
C = .Range("C" & .Rows.Count).End(xlUp).Row
For i = 1 To C
ComboBox3.AddItem .Range("C" & i)
Next
End With
With Sheets("Données")
C = .Range("D" & .Rows.Count).End(xlUp).Row
For i = 1 To C
ComboBox4.AddItem .Range("D" & i)
Next
End With
End Sub
J'ai ca comme code dans l'onglet user form.
Quelqu'un peut me dire pourquoi il me met un message d'erreur "l'indice n'appartient pas a la selection"
De plus -> Comment faire pour que selon la checkbox choisi entre les 5, cela renvoi la valeur de la checkbox dans la colonne souhaitée (les 5 ranges qui manque le .value =)
Pour l'appel de la macro j'ai :
Sub usf()
UserForm1.Show
End Sub
Mais même la je suis sur que je me plante sur l'appel
edit : Je pense que je me plante meme totalement sur l'appel vu que dans le fichier du dessus il n'y a meme pas de macro