[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 !
A voir également:
- [VBA] Trouver une cellule vide et la remplir
- Trouver adresse mac - Guide
- Comment supprimer une page vide sur word - Guide
- Excel compter cellule couleur sans vba - Guide
- Aller à la ligne dans une cellule excel - Guide
- Ou trouver la corbeille - Guide
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+
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+
Lila
Merci beaucoup pour ta réponse ! Je suis obligée d'utiliser un Userform et VBA car c'est un travail à rendre.
bonjour
essaies cette macro (n'oublie pas les points devant range et columns!)
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