bonjour
mon code était le suivant
Sub CacheLignesMemesValeurs()
With [A1].CurrentRegion
.Range(Cells(1, 1), Cells(Rows.Count, 1).End(xlUp)).Offset(0, 1).Formula = "=LEFT(RC[-1],3)=""209"""
.AutoFilter 2, True
.Columns(2).ClearContents
Worksheets.Add
.CurrentRegion.Copy [A1]
End With
End Sub
explications
================
with [A1].currentregion
=> excel comprendra qu'il devra appliquer certaines actions à l'objet [A1].currentregion
=> [A1].currentregion correspond à la région courante/adjacente à la cellule A1. Manuellement, vous pouvez l'atteindre en appuyant sur les touches Ctrl et *
=> [A1] est une manière de désigner la plage A1 que l'on désigne normalement comme suit : range("A1"). Les crochets sont en fait un raccourci syntaxique qui indique à excel d'évaluer l'expression qui est passée entre les crochets. Onpeut aussi écrire msgbox [5*4]
================
.Range(Cells(1, 1), Cells(Rows.Count, 1).End(xlUp)).Offset(0, 1).Formula = "=LEFT(RC[-1],3)=""209"""
=> cette dernière instruction applique une action sur une plage définie à partir de [A1].currentregion
=> cette plage va de la cellule située dans la 1ière ligne et 1ière colonne de cette plage, jusqu'à la dernière cellule non vide de la première colonne de cette région.
=> l'action appliquée est l'insertion d'une formule relative.
ce n'est pas facile pour moi à expliquer. le mieux pour toi serait d'étudier el comportement de certaines instructions. regarde le lien suivant, tu y trouveras des exemples de sélection <http://xlbysteph.free.fr/aideinformatique/actioncellule.htm>
================
.AutoFilter 2, True
=> cela filtre la zone [A1].currentregion en sélectionnant toutes les lignes pour lesquelles les valeurs de la 2nde colonne de la plage [A1].currentregion sont égales à VRAI
================
.Columns(2).ClearContents
Colonne plus utile, son contenu est effacé
=================
Worksheets.Add
ajout d'une feuille
=================
.CurrentRegion.Copy [A1]
copie de la plage [A1].currentregion sur la plage A1 de la feuille nouvellement insérée
bye
Stéphane