Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Filtre automatique à partir d'une liste

1 réponse
Avatar
Jed
Bonjour,
J'ai un tableau avec plusieurs colonnes et j'ai une liste=20
avec les noms de ces colonnes.
Cette liste me sert de crit=E8re pour une extraction.
Exemple :

A B C D
No Niveau Local Famille
1A P020 R337 Ventil
2B P030 R101 Capteur
3A P050 R107 Tuyau

J'aimerai que quand l'utilisateur choisisse,dans un onglet=20
s=E9par=E9(Selection) :

Colonne Valeur Onglet
LOCAL R337 Base

je lui cr=E9e un nouvel onglet avec toutes les lignes R337=20
de la colonne LOCAL.

J'ai un probl=E8me pour faire un filtre automatique avec le=20
nom des colonnes. Ci dessous mon code :


Sub Extract()
'
'
Feuille =3D ActiveSheet.Name
Worksheets.Add.Move after:=3DWorksheets(Worksheets.Count)
ActiveSheet.Name =3D "Extraction"

Sheets("Selection").Activate =20
Range("C2").Select ' contient le nom de l'onglet a=20
traiter
Fich =3D ActiveCell.Value

Sheets(Fich).Activate

ActiveCell.CurrentRegion.Select
Selection.AutoFilter Field:=3DRange("Selection!A2"),=20
Criteria1:=3DRange("Selection!B2").Value
'---> et la =E7a plante lamentablement sur le code=20
cidessus. ;-((((

Selection.Copy
ActiveSheet.AutoFilterMode =3D False
Range("A1").Select ' pour quitter la selection
Range("A1").Activate ' de la feuille traiter
Sheets("Recup").Select
Range("A1").Select
ActiveSheet.Paste
Application.CutCopyMode =3D False

End Sub

QQ peut il m'aider sur ce coup la. ???

et une deuxi=E8me question ( pour ne pas augmenter les=20
posts!!)
Comment lister le noms des onglets dans une cellule ou une=20
liste ( pas de userform)
avec ce code :

Sub Liste_Onglet()

J =3D Sheets.Count
Dim Liste(255) As Variant

For i =3D 1 To J
Liste(i) =3D Sheets(i).Name
????? =3D Sheets(i).Name=20
Next i

End Sub

---> que dois je mettre =E0 la place des ?????. J'ai les=20
noms mais comment l'utiliser en liste ?
Pour permettre aux utilistaeur d'avoir la liste plutot que=20
taper le noms manuellement


cdlt
Merci a tous.

1 réponse

Avatar
AV
et une deuxième question ( pour ne pas augmenter les
posts!!)


Ca part d'un bon sentiment mais mieux vaut autant de posts que de questions !

Comment lister le noms des onglets dans une cellule ou une
liste ( pas de userform)


Sub Liste_Onglet()
For i = 1 To Sheets.Count
Range("Feuil1!A" & i) = Sheets(i).Name
Next i
End Sub

AV