Comment aller à la première ligne de libre après avoir enregistrer un formulaire ?

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

mel1414

XLDnaute Nouveau
Bonjour à tous,

Complétement novice dans l'excel et le VBA je viens vers vous pour avoir un peu d'aide.

Alors voilà sur une première feuille j'ai une sorte de formulaire que doit remplir un utilisateur où l'utilisateur peut soit valider le formulaire soit l'effacer avec des boutons.

Etant donné que ce formulaire est destiné à ce que plusieurs utilisateurs le remplissent, j'ai créé une deuxième feuille où je reporte les champs du formulaire.

Ma question est :
comment reporter, sauvegarder et aller à la ligne après validation du formulaire ?

J'ai mis mon fichier en PJ.

Merci à qui pourra m'aider.
 

Pièces jointes

Re : Comment aller à la première ligne de libre après avoir enregistrer un formulaire

Bonjour.
Vous avez déjà dans votre programmation un élément de réponse qui semble marcher.
VB:
Dim Ligne As Long
Ligne = Feuil2.Cells.Find("*", , , , , xlPrevious).Row + 1
Feuil2.Cells(Ligne, "A").Value = Me.[C5].Value
etc.
Mais ce serait plus rapide de les ranger dans un T(1 To 1, 1 To 9) que vous affecteriez d'un coup à la fin à Feuil2.[A:I].Rows(Ligne).Value
 
Re : Comment aller à la première ligne de libre après avoir enregistrer un formulaire

Merci de la réponse.
Oui effectivement j'ai baragouiné quelque chose mais qui ne fonctionnait pas ou du moins je n'ai pas réussis à le faire fonctionner.

Je ne comprends pas trop de quoi il s'agit le 1 to 1 et 1 to 9... trop novice désolé !
 
Re : Comment aller à la première ligne de libre après avoir enregistrer un formulaire

Il s'agit des dimensions d'un tableau de Variant.
VB:
Dim T(1 To 1, 1 To 9)
L'image de la propriété Value d'une plage de plusieurs cellules contiguës est toujours un tableau à 2 dimensions même quand il n'y a qu'une seule ligne ou colonne.
 
Dernière édition:
Re : Comment aller à la première ligne de libre après avoir enregistrer un formulaire

j'essaie de faire avec le peu de connaissance que j'ai 🙂

Comme cela :
'Dim Ligne As Long
'Dim T (1 To 1,1 To 9)
'Ligne = Feuil2.Cells.Find("*", , , , , xlPrevious).Row + 1
'Feuil2.[A:I].Rows(Ligne).Value
 
Re : Comment aller à la première ligne de libre après avoir enregistrer un formulaire

Il faut bien évidemment d'abord garnir votre tableau avant de l'affecter à la Value de la ligne
VB:
T(1, 1) = Me.[C5].Value
T(1, 2) = Me.[C7].Value
etc.
Feuil2.[A:I].Rows(Ligne).Value = T
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour