[VBA] Trouver une cellule vide et la remplir
Lila
-
michel_m Messages postés 18903 Date d'inscription Statut Contributeur Dernière intervention -
michel_m Messages postés 18903 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
J'aimerais que mon tableau sur Excel se remplisse à partir d'un Userform, mais je ne sais pas comment faire :
Dans un Userform, j'ai des textbox qui correspondent aux coordonnées (textbox1 = "Nom", textbox2 = "Prénom", etc) et un Commandbutton ("Valider").
Sur une feuille Excel, j'ai un tableau avec des colonnes correspondant aux Coordonnées (A1 = "Nom", "A2" = "Prénom", etc).
Pour l'instant, il ne remplit que la première ligne, or ce que je veux c'est qu'il cherche une cellule vide dans une colonne et remplisse mon tableau lorsque les textbox sont remplis .
Sub Valider_Cliquer()
Sheets("Feuille1").Range("A2").Select
Range("B2").Value = TextBox1.Value 'Nom
Range("C2").Value = TextBox2.Value 'Prénom
Range("D2").Value = TextBox3.Value 'Adresse
Range("E2").Value = TextBox4.Value 'Ville
Range("F2").Value = TextBox5.Value 'Numéro de téléphone
Range("G2").Value = TextBox6.Value 'Numéro de portable
End Sub
Merci beaucoup pour votre aide !
J'aimerais que mon tableau sur Excel se remplisse à partir d'un Userform, mais je ne sais pas comment faire :
Dans un Userform, j'ai des textbox qui correspondent aux coordonnées (textbox1 = "Nom", textbox2 = "Prénom", etc) et un Commandbutton ("Valider").
Sur une feuille Excel, j'ai un tableau avec des colonnes correspondant aux Coordonnées (A1 = "Nom", "A2" = "Prénom", etc).
Pour l'instant, il ne remplit que la première ligne, or ce que je veux c'est qu'il cherche une cellule vide dans une colonne et remplisse mon tableau lorsque les textbox sont remplis .
Sub Valider_Cliquer()
Sheets("Feuille1").Range("A2").Select
Range("B2").Value = TextBox1.Value 'Nom
Range("C2").Value = TextBox2.Value 'Prénom
Range("D2").Value = TextBox3.Value 'Adresse
Range("E2").Value = TextBox4.Value 'Ville
Range("F2").Value = TextBox5.Value 'Numéro de téléphone
Range("G2").Value = TextBox6.Value 'Numéro de portable
End Sub
Merci beaucoup pour votre aide !
2 réponses
-
Bonsoir,
1/ Tu peux donner des noms explicites à tes TextBox (ex : renommer TextBox1 en "Nom", etc.)
2/ Pour ton problème :
a) si j'ai bien compris, il faudrait que tu passes par un paramètre te donnant la ligne à remplir et donc appeler les cellules par Cells(i,2).Value=Nom.Value (et non plus la propriété Range
b) si j'ai bien compris : autant remplir les cellules du tableau plutôt qu'un UserForm ?!!
A+ -
bonjour
essaies cette macro (n'oublie pas les points devant range et columns!)
Sub Valider_Cliquer() Dim Ligvide As Integer With Sheets("Feuille1") Ligvide = .Columns("A").Find("*", , , , , xlPrevious).Row + 1 .Range("B" & Ligvide) = TextBox1.Value 'Nom .Range("C" & Ligvide) = TextBox2.Value 'Prénom 'etc End With End Sub