Macro Excel -Copie de cellules de bas en haut
Résolu/Fermé
A voir également:
- Macro Excel -Copie de cellules de bas en haut
- Formule excel pour additionner plusieurs cellules - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Liste déroulante excel - Guide
- Copie cachée - Guide
- Verrouiller cellules excel - Guide
6 réponses
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 711
23 févr. 2010 à 22:37
23 févr. 2010 à 22:37
bonjour
Après la sélection d'une plage sur une colonne, tu peux utiliser la macro suivante :
Après la sélection d'une plage sur une colonne, tu peux utiliser la macro suivante :
Public Sub col_bas_en_haut() Dim lig As Long With Selection For lig = .Rows.Count + .Row - 1 To 1 Step -1 If IsEmpty(Cells(lig, .Column).Value) Then Cells(lig, .Column).Value = Cells(lig + 1, .Column).Value End If Next lig End With End Sub
Merci pour ta reponse.
Ca marche assez bien, le seul souci c'est que la copie ne s'arrete pas un niveau de la selection en haut et meme tout en haut.
Merci
Yann
Ca marche assez bien, le seul souci c'est que la copie ne s'arrete pas un niveau de la selection en haut et meme tout en haut.
Merci
Yann
eriiic
Messages postés
24601
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
25 novembre 2024
7 243
23 févr. 2010 à 23:15
23 févr. 2010 à 23:15
Bonsoir,
On va supposer que gb est dans les bras de morphée ;-)
Modifie sa macro en remplaçant par :
For lig = .Rows.Count + .Row - 1 To .Row Step -1
si tu veux qu'elle s'arrete à la 1ère cellule sélectionnée et non à la ligne 1
eric
On va supposer que gb est dans les bras de morphée ;-)
Modifie sa macro en remplaçant par :
For lig = .Rows.Count + .Row - 1 To .Row Step -1
si tu veux qu'elle s'arrete à la 1ère cellule sélectionnée et non à la ligne 1
eric
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 711
24 févr. 2010 à 22:33
24 févr. 2010 à 22:33
bonsoir Yannmrt,
de haut en bas ?
Bonsoir Éric,
Merci pour la judicieuse correction : j'avais bien besoin de Morphée !
de haut en bas ?
Public Sub col_haut_en_bas() Dim lig As Long With Selection For lig = .Row To .Rows.Count + .Row - 1 If IsEmpty(Cells(lig, .Column).Value) Then Cells(lig, .Column).Value = Cells(lig - 1, .Column).Value End If Next lig End With End Sub
Bonsoir Éric,
Merci pour la judicieuse correction : j'avais bien besoin de Morphée !
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question