Recopie automatique
Bonjour,
j'essaie en vain de créer une macro que me permette de recopier des valeurs, dans une feuille excel, jusqu'à ce que la valeur suivante soit trouvée, voir ci-dessous.
A noter que les différentes valeurs se trouvent également dans une liste à part, dans le même format, .
Merci d'avance si vous pouvez m'aider.
Bien à vous
Bug
ATH CENTRE - 104000
ATH LES PRIMEVERES - 102200
CHIEVRES - 131700
ENGHIEN - 139400
FRASNES-LEZ-ANVAING - 146500
LESSINES - 167200
j'essaie en vain de créer une macro que me permette de recopier des valeurs, dans une feuille excel, jusqu'à ce que la valeur suivante soit trouvée, voir ci-dessous.
A noter que les différentes valeurs se trouvent également dans une liste à part, dans le même format, .
Merci d'avance si vous pouvez m'aider.
Bien à vous
Bug
ATH CENTRE - 104000
ATH LES PRIMEVERES - 102200
CHIEVRES - 131700
ENGHIEN - 139400
FRASNES-LEZ-ANVAING - 146500
LESSINES - 167200
2 réponses
-
Tu peux essayer quelque chose comme ça:
Sub recopie()
i = 1 'première ligne à copier (ici la ligne 1)
Do Until i = 60 'dernière ligne non vide à ne pas recopier
cop = Cells(i, 1) 'selon la colonne concernée (ici la colonne 1)
suite = Cells(i + 1, 1)
Do Until suite <> ""
suite = Cells(i + 1, 1)
If suite = "" Then
Cells(i + 1, 1) = cop
End If
i = i + 1
Loop
Loop
End Sub
Attention à bien mettre une valeur dans ta dernière ligne à ne pas recopier (ici ligne 60) pour que la boucle s'arrête-
Bonjour didibonf,
je rencontre un problème pour insérer les différentes données
Ci-dessous la 1ère feuille contenant les cellules, je désire que ATH CENTRE - 104000 se recopie automatiquement jusque ATH LES PRIMEVERES - 102200 et ainsi de suite.
Les différents noms sont également repris sur une 2ème feuille dans une liste en colonne (voir plus bas)
1ere feuille
ATH CENTRE - 104000
ATH LES PRIMEVERES - 102200
CHIEVRES - 131700
ENGHIEN - 139400
2ème feuille
ATH CENTRE - 104000
ATH LES PRIMEVERES - 102200
CHIEVRES - 131700
ENGHIEN - 139400 -
-
-
-
-
-
bug dany,
cette macro devrait fonctionne :
Sub recopie()
dernligne = Range("A65000").End(xlUp).Row
i = 13 'première ligne à copier (ici la ligne 1)
Do Until i = dernligne
cop = Cells(i, 1) 'selon la colonne concernée (ici la colonne 1)
suite = Cells(i + 1, 1)
On Error Resume Next
Do Until suite = WorksheetFunction.VLookup(suite, Sheets("Liste des entités").Range("A:A"), 1, False)
suite = Cells(i + 1, 1)
If suite <> WorksheetFunction.VLookup(suite, Sheets("Liste des entités").Range("A:A"), 1, False) Then
Cells(i + 1, 1) = cop
End If
Loop
i = i + 1
Loop
End Sub
N'hésite pas à poser des questions si tu ne comprends pas le code