|
Le code généré
Sub MiseEnForme()
' MiseEnForme Macro
' Macro enregistrée le 06/09/2005 par Delenne Xavier
'
Range("A1").Select
Selection.CurrentRegion.Select
Selection.SpecialCells(xlCellTypeBlanks).Select
Selection.FormulaR1C1 = "=R[-1]C"
Selection.CurrentRegion.Select
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Range("A1").Select
End Sub
Explications :
- Range("A1").Select : Selection de la cellule A1
- Selection.CurrentRegion.Select : en lisant en arriere: Selectionner la region courante
(le tableau complet) de la selction en cours (A1)
- Selection.SpecialCells(xlCellTypeBlanks).Select : selectionner les cellules
de types blanc (cellules vides) à l'interieur de la selection (le tableau complet)
- Selection.FormulaR1C1 = "=R[-1]C" : Mettre la formule :
"=R[-1]C" (ligne - 1(R=Row), C pour column donc même colonne, en dautre terme,
donner à la selection en cours (toutes les cellules vides) la valeur de la cellule au dessus
- reselectionner le tableau complet ctrl * (cf ci dessus)
- Copier la selection
- Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False ->Coller spécial en valeurs pour éviter lors d'un nouveau
tri du tableau d'avoir les formules et donc un changement de contenu des cellules
(copie de la valeur du dessus)
- Application.CutCopyMode = False : sortie du mode copier
(contour clignotant) par la touche echap.
- Range("A1").Select : Selection de la cellule A1
Il n'y a rien à modifier dans cette macro puisque pas de référence au nom de feuille ou fichier
|