Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Incrément d'une ligne chaque fois qu'elle est vide

  • Initiateur de la discussion Initiateur de la discussion michoulu
  • Date de début Date de début

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 !

M

michoulu

Guest
Bonjour,

J'ai crée une boite de dialogue où l'utilisateur remplit des informations.

J'aimerais que chaque fois qu'il clique sur un bouton valider, les infos saisis se notent sous forme de tableau dans une page "Historique".

Donc je cherche à réaliser un code qui va dire :

test d'une ligne
si la ligne est vide : on note les infos
sinon : on passe à la ligne suivante

du style :

Code:
déclaration des variables....

m = 2

If Worksheets("HistoriqueSaisie").Cells(m, 2).Value = "" Then

Worksheets("HistoriqueSaisie").Cells(m, 2).Value = TB1.Value
Worksheets("HistoriqueSaisie").Cells(m, 3).Value = Désignation
Worksheets("HistoriqueSaisie").Cells(m, 4).Value = nomfeuille
Worksheets("HistoriqueSaisie").Cells(m, 5).Value = jour
Worksheets("HistoriqueSaisie").Cells(m, 6).Value = TB2.Value

Else


Worksheets("HistoriqueSaisie").Cells(m + 1, 2).Value = TB1.Value
Worksheets("HistoriqueSaisie").Cells(m + 1, 3).Value = Désignation
Worksheets("HistoriqueSaisie").Cells(m + 1, 4).Value = nomfeuille
Worksheets("HistoriqueSaisie").Cells(m + 1, 5).Value = jour
Worksheets("HistoriqueSaisie").Cells(m + 1, 6).Value = TB2.Value

End If

mais dans mon code il ne test qu'une ligne et si je met for m = 1 to 100 il m'en remplit 100 ....

Je ne maîtrise pas assez le Row pour savoir comment l'utiliser ...

Merci d'avance
 
Re : Incrément d'une ligne chaque fois qu'elle est vide

Salut Michoulu,

D'après ton code, il va toujours trouver une ligne à remplir car ton else est actif à partir du moment que le if est faux.
Je te propose ce code:
Code:
i = 1

for m = 1 to 100
 
If Worksheets("HistoriqueSaisie").Cells(m, 2).Value = "" Then
 
 Worksheets("HistoriqueSaisie").Cells(i, 2).Value = TB1.Value
 Worksheets("HistoriqueSaisie").Cells(i, 3).Value = Désignation
 Worksheets("HistoriqueSaisie").Cells(i, 4).Value = nomfeuille
 Worksheets("HistoriqueSaisie").Cells(i, 5).Value = jour
 Worksheets("HistoriqueSaisie").Cells(i, 6).Value = TB2.Value
 i=i+1

End If

Next
 
Re : Incrément d'une ligne chaque fois qu'elle est vide

erf ...

i est forcé à 1 même avec le i = i + 1 la macro remplit uniquement la ligne 1 et repasse dessus ...
Etant donné que je veux un historique il ne faut pas réécrire sur la ligne mais passer à la suivante ...
 
Re : Incrément d'une ligne chaque fois qu'elle est vide

Hmm oui si je peux le supprimer par la suite ...

Il faut cliquer sur la feuille base puis sur boite de dialogue :

au moment où quelqu'un clic sur valider il faut que les données soient saisis dans la feuille Historique ...

Il vaut mieux écrire ici le code que de le modifier dans le classeur sinon je ne m'en sortirais pas :/ 🙁
 
Dernière modification par un modérateur:
Re : Incrément d'une ligne chaque fois qu'elle est vide

Re,

Visiblement tu souhaites écrire à la suite dans la feuille Historique Saisie

Peut-être un truc du genre, alors

Code:
m = Worksheets("HistoriqueSaisie").cells(rows.count,2).end(xlup).row +1

Worksheets("HistoriqueSaisie").Cells(m, 2).Value = TB1.Value
Worksheets("HistoriqueSaisie").Cells(m, 3).Value = Désignation
Worksheets("HistoriqueSaisie").Cells(m, 4).Value = nomfeuille
Worksheets("HistoriqueSaisie").Cells(m, 5).Value = jour
Worksheets("HistoriqueSaisie").Cells(m, 6).Value = TB2.Value
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
4
Affichages
733
  • Question Question
XL 2021 VBA excel
Réponses
4
Affichages
452
Réponses
3
Affichages
879
Réponses
9
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…