XL 2019 VBA - Déclencher la macro sur toutes les lignes

Pheine

XLDnaute Nouveau
Bonjour à tous,

Je poursuis mon fichier Excel et je bloque de nouveau sur une nouvelle difficulté.

Pour rappel, je suis en train de travailler sur un outil qui permettra de créer une base de données de numéro de série.
J'ai commencé à faire un outil qui me permettait de tester 1 par 1 chaque EAN (Onglet "Console")
> Je teste si l'EAN est en BDD (Onglet "Listing") [Macro1]
> Puis j'incrémente une nouvelle quantité dans ma BDD (Onglet "Listing) > Commence de 1 si l'EAN est nouveau, commence de la dernière quantité connue en BDD si l'EAN existe [Macro Incrementer]

Mais en réfléchissant, je m'aperçois que ça risque d'être très long si j'ai plusieurs EAN à tester
J'ai donc créé un nouvel onglet "Encoding" où je compte remplir les 3 premières colonnes (EAN, quantité, et une info non utiliser dans mes macros)
J'ai donc dupliqué mes macros et fait des boutons sur chaque ligne (LastNumber = Macro1 ; Incrementer2 ; H3+I3 qui est la fusion des 2 premiers boutons) > A terme je ne souhaite conserver que le dernier boutons)

Ma demande est donc la suivante : Comment faire pour ne pas avoir à dupliquer ces boutons sur chaque ligne ?
Précision : Je ne saurai jamais combien de ligne j'aurai (peut être 2 ou 3, peut-être 100)

J'ai cherché à appliquer la macro sur la succession de ligne, mais le problème c'est que je n'arrive pas à mettre à jour les variables (données présentes dans la colonne A et B) du coup j'ai le même résultat partout.
Autre difficulté, je n'arrive pas à stop quand la ligne est vide.

PS : Je passe actuellement par la colonne D "Old" puis la colonne E "Start" car je n'arrive pas à ajouter +1 directement en VBA, la colonne E me sert donc à ajouter via une formule le +1 => Si vous avez une solution pour mettre le bon résultat en 1 seule colonne je suis preneur.

Le document est trop lourd pour mettre en PJ, voici un lien : https://we.tl/t-N8sgBwlEDh
 

Pheine

XLDnaute Nouveau
Bonjour à tous,

je me permets de vous relancer, j'aurais juste besoin d'aide pour comprendre comment boucler la macro sur les valeurs de la ligne en dessous, jusqu'à ce que la ligne soit vide.

Merci d'avance
 

Ikito

XLDnaute Occasionnel
Bonjour,

Je n'ai pas tout compris, mais d'après ton dernier message, je te mets un exemple ici, en admettant que tu veuilles boucler sur la colonne A jusqu'à ce qu'une cellule en A soit vide.

VB:
i = 1 'Correspond à A1
    Do While Cells(i,1) <> ""
        'Ton traitement
    i = i + 1
    Loop
 

Pheine

XLDnaute Nouveau
Bonsoir,

Merci beaucoup, c'est en partie ce que je désirais et j'ai réussi à adapter le tout avec ça.

Bonne soirée
 

Créez un compte ou connectez vous pour répondre

Vous devez être membre afin de pouvoir répondre ici

Créer un compte

Créez un compte Excel Downloads. C'est simple!

Connexion

Vous avez déjà un compte? Connectez vous ici.

Haut Bas