Détecter puis remplir première ligne vide avec une macro

Bonjour.

Je fais face à un petit problème dans une macro que j'ai faite pour un fichier professionnel.

En gros, cette macro affiche un formulaire demandant des infos puis à partir de ces infos, remplit la première ligne vide détectée.

Je ne sais plus pour quelles raisons, mais au final il était préférable de la faire "fonctionner dans l'autre sens" donc elle parcoure le tableur de bas en haut puis s'arrête quand elle détecte une ligne déjà remplie, pour renseigner celle d'en dessous (j'espère que c'est compréhensible).

Tout ça fonctionne bien, c'est déjà pas mal. Mais si le dernière utilisateur a renseigné une ligne en laissant une des cellules vide, alors la macro ira remplir cette cellule-là, alors qu'il faudrait qu'elle remplisse celle du dessous.

Désolé d'avance si c'est pas clair du tout, mais j'avoue que j'ai beaucoup de mal à l'expliquer à l'écrit.

En fait dans l'état actuel, la macro ne remplit non pas la première ligne entièrement vide du tableur comme je le voudrais, mais la première cellule vide de chaque colonne (ça sera peut-être tout simplement plus clair dit comme ça).

Bonjour Mlkgiosn, bonjour le forum,

Ce qui serait beaucoup plus clair c'est que tu fournisses un fichier exemple...

Je ne pense pas pouvoir fournir le fichier dont je parle directement, donc j'ai modifié le code pour en fournir un totalement neutre qui fait la même chose.

Dans le fichier fourni, tout est indiqué :

-Les cases bleues sont celles remplies manuellement par un utilisateur (sans utiliser la macro)

-Les cases en vert sont celle qui ont été remplies en utilisant la macro

Par exemple, sur la ligne 1, l'utilisateur a bien renseigné toutes les colonnes, donc la macro rempli bien toute la ligne en dessous.

Mais si l'utilisateur n'est pas très rigoureux et laisse une case vide lorsqu'il remplit une ligne (et malheureusement on ne peut pas faire confiance à chaque utilisateur pour respecter les règles, même si j'aimerai bien) alors la macro va aller remplir toute les dernières cellules vides, au lieu de remplir correctement la ligne suivante.

En gros dans le fichier en exemple, j'aurai voulu que la macro remplisse A4, B4, C4 et D4, sauf que l'utilisateur précédent a laissé B3 vide donc la macro a remplit A4, B3, D4 et C4.

En effet je pense que ça sera mieux pour comprendre que mes tentatives d'explication précédentes lol

Re,

Je n'ai pas compris pourquoi plusieurs UserForms ?!...

Une proposition. Tant que la partie à remplir manuellement n'est pas totalement remplie, la macro n'agit pas... À tester...

Eventuellement c'est une idée oui, je vais voir si je peux l'appliquer dans mon cas.

Les userform, il y en a plusieurs car là c'est juste un fichier pour poser ma question, dans le vrai fichier, y a beaucoup plus de champs à renseigner, et je voulais éviter de faire un userform qui prend tout l'écran, quoique, en soit, pourquoi pas au final.

Merci !

Heu non, je ne réponds pas. Je me l'envoie à moi même car il me manquait...

Rechercher des sujets similaires à "detecter puis remplir premiere ligne vide macro"