Changer de ligne, lors d'une nouvelle UserForm

Résolu/Fermé
xFlo - 12 févr. 2014 à 22:59
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 - 14 févr. 2014 à 08:48
Bonsoir,

J'aimerai savoir s'il est possible de changer de ligne, lorsqu'on ré-ouvre la UserForm à l'aide du bouton ? Don't panic ! Je vais m'expliquer !

J'ai un bouton sur ma page excel qui me permet d'ouvrir une UserForm qui possède une ComboBox, ensuite quand je valide cette UserForm, une deuxième UserForm s'ouvre, et là il y a plein d'élément à remplir avec des ComboBox et des TextBox. Après avoir rempli tout ces éléments, ils se mettent bien sur la ligne 4 en C4,D4,E4,F4 .... etc. Jusqu'à la ça fonctionne !

Ensuite, je ré-appui sur le bouton pour ré-ouvrir la UserForm, sauf que la je voudrai que les éléments qu'on va remplir dans la UserForm dans un second temps se remplisse cette fois-ci sur la ligne 5, en C5,D5,E5,F5 .... etc. Et ainsi de suite !

Merci d'avance pour votre aide !

Cordialement,
Flo.

A voir également:

1 réponse

michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
Modifié par michel_m le 13/02/2014 à 08:30
Bonjour,

à l'ouverture du 2° userform, il faut indiquer la première ligne; plusieurs manières

ligvide=columns("C").find("*",,,,,xlprevious).row+1

ou s'il n'y a pas de trous dans la colonne C
ligvide=columns("C").find("",range("C1"),xlvalues).row

il y a encore plein d'autre méthodes comme
ligvide = Range("C" & Cells.Rows.Count).End(xlUp).Row + 1

comme tu veux...

Edit:
il faudra certainement déclarer ligvide en variable globale avec
Dim ligvide as integer
avant toute macro dans le code de l'usf
Michel
0
xXFlo_xFR Messages postés 19 Date d'inscription samedi 30 mars 2013 Statut Membre Dernière intervention 14 février 2014
13 févr. 2014 à 13:42
Merci de ton aide !

Mais étant assez novice dans la matière, j'aimerai avoir un peu plus de précision sur l'endroit ou je doit copier la formule et se que je doit modifier ?

Merci.
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
13 févr. 2014 à 15:38
Bin c'est dans la procédure "userform initialize" de l'usf concerné où ca t'arrange avant l'appel de ligne vide

par ex en utilisant un bloc

With sheets("machin")
ligvide=.columns("C").find("",.range("C1"),xlvalues).row
attention au points obligatoires devant columns et range
End with
0
xXFlo_xFR Messages postés 19 Date d'inscription samedi 30 mars 2013 Statut Membre Dernière intervention 14 février 2014
Modifié par xXFlo_xFR le 13/02/2014 à 17:00
Ça ne fonctionne pas ...

J'ai trouvé sur votre site une personne qui avait le même problème :
https://forums.commentcamarche.net/forum/affich-3262392-macro-excel-chercher-premiere-ligne-vide

Mais quand j'essaye le code (en le modifiant en fonction de mon fichier), ça ne fonctionne pas non plus ....
0
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 3 310
Modifié par michel_m le 13/02/2014 à 17:07
BONJOUR ???

Et si tu lisais plus haut ce qui s'est passé plutôt que de dire "Ça ne fonctionne pas .."

De plus, peut-^tre apprendre ENFIN un peu de politesse
https://www.commentcamarche.net/infos/25855-charte-d-utilisation-de-commentcamarche-net-respect-d-autrui/#politesse
0
xXFlo_xFR Messages postés 19 Date d'inscription samedi 30 mars 2013 Statut Membre Dernière intervention 14 février 2014
13 févr. 2014 à 17:14
Bonjour,

Si cela peut vous aidez, voici mon code que j'ai actuellement :

Private Sub CommandButton1_Click()
Range("C4") = ComboBox1.Value
' Permet d'ouvrir la UserForm2 quand on valide la UserForm1
UserForm1.Hide
UserForm2.Show

End Sub

Private Sub CommandButton2_Click()
' Permet de fermer la userform client
End

End Sub

Et quand j'insère votre code, ça ne fonctionne plus du tout.
0