Macro Excel ligne non vide à atteindre
Résolu
Evedll
Messages postés
79
Statut
Membre
-
Evedll Messages postés 79 Statut Membre -
Evedll Messages postés 79 Statut Membre -
Bonjour,
J'exporte des données d'un programme vers Excel. Cependant, le fichier n'est pas vraiment exploitable et je dois souvent déplacer les données.
J'aimerai atteindre dans une colonne (exemple colonne B) la cellule suivante non vide. A partir de cette cellule active, je dois récupérer la donnée de cette même ligne qui est 5 cellules vers la droite(exemple H5), la copier et la coller une cellule à droite et en bas (I6). Je dois répéter cette manipulation un grand nombre de fois et c'est très long, donc créer une boucle il me semble.
Je n'ai pas trouvé sur le forum de macro relative à ma demande.
Puis-je avoir d'aide d'une personne compétente dans ce domaine.
Je vous remercie de bien vouloir m'aider car avec l'éditeur de macro je ne peux pas le faire.
Bien cordialement
Configuration: Windows / Firefox 62.0
Version excel 2013
J'exporte des données d'un programme vers Excel. Cependant, le fichier n'est pas vraiment exploitable et je dois souvent déplacer les données.
J'aimerai atteindre dans une colonne (exemple colonne B) la cellule suivante non vide. A partir de cette cellule active, je dois récupérer la donnée de cette même ligne qui est 5 cellules vers la droite(exemple H5), la copier et la coller une cellule à droite et en bas (I6). Je dois répéter cette manipulation un grand nombre de fois et c'est très long, donc créer une boucle il me semble.
Je n'ai pas trouvé sur le forum de macro relative à ma demande.
Puis-je avoir d'aide d'une personne compétente dans ce domaine.
Je vous remercie de bien vouloir m'aider car avec l'éditeur de macro je ne peux pas le faire.
Bien cordialement
Configuration: Windows / Firefox 62.0
Version excel 2013
1 réponse
-
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention Ambassadeur 1 588
bonsoir, je n'ai pas bien compris "la cellule suivante non vide": la cellule suivant quoi?
tu n'as pas vraiment continué ton exemple.
de plus, si tu souhaites que quelqu'un t'écrive une macro, il faudrait être plus précis.
tu écris "exemple colonne B": comment la macro saura-t-elle de quelle colonne il s'agit?
tu aurais pu écrire:
pour chaque ligne où la colonne B est vide, la macro doit copier la valeur de la colonne H de cette ligne dans la colonne I de la ligne suivante.
ou bien
pour toute cellule vide, la macro soit copier le contenu de la cellule 5 colonnes à droite dans la ligne suivante, une colonne encore plus à droite.
ou bien encore autre chose, ton imagination étant la limite?
prends bien le temps de déterminer ce que tu souhaites.-
Bonjour,
Merci de ta réponse, voici donc le texte :
pour chaque ligne où la colonne B est vide, la macro doit copier la valeur de la colonne H de cette ligne dans la colonne I de la ligne suivante.
Cela semblait clair dans mon esprit et je ne me suis pas rendue compte des autres possibilités.
Merci de ton aide.
Cordialement
Evelyne- Je propose ceci, qui va faire ce que tu as écrit, pour toutes les lignes en partant de la première ligne, tant qu'il y a quelque chose en colonne A. il est possible d'adapter: comme tu n'as pas précisé où commencer et où s’arrêter, j'ai choisi de me baser sur la colonne A, et d’arrêter dès qu'elle n'est pas remplie.
Option Explicit Sub BHI() Dim fl As Worksheet Dim cl As Range, numl As Long Set fl = Sheets("evedll") 'le nom de la feuille où faire le boulot numl = 1 Do While fl.Cells(numl, 1) <> "" 'tant que la colonne A n'est pas vide If fl.Cells(numl, 2) = "" Then 'si la colonne B est vide fl.Cells(numl + 1, 9) = fl.Cells(numl, 8) 'copier le contenu de la colonne H _ vers la colonne I de la ligne suivante End If numl = numl + 1 Loop End Sub
-
-
Bonsoir yb_be,
J'ai avancé dans ma VBA et j'ai encore pas mal de recherche à faire pour améliorer mon travail. Tu m'as bien aidée à avancer car ma question était une parmi tant d'autres.
J'essaie de progresser et ne demande que quand je ne sais pas du tout ou ne comprend pas.
Je ne mets pas encore en résolu au cas ou j'aurai encore besoin de tes services car il y a encore du travail sur mon fichier.
Encore merci
Cordialement
Evelyne -
-