Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
MichD
Bonjour,
Tu peux utiliser un filtre automatique.
Colles ceci dans un module du fichier que tu as publié et observe le résultat :
'------------------------------------------- Sub test()
Dim Rg As Range, A As Integer, Sh As Worksheet
Set Sh = Worksheets("Feuil2")
Application.ScreenUpdating = False With Sh With .Range("B2:I8") A = 2 'Pour chacune des colonnes, tu appliques un filtre auto. For Each c In Array(6, 7, 8) With .Columns(c) .AutoFilter field:=1, Criteria1:=4 .SpecialCells(xlCellTypeVisible).Copy Sh.Cells(20, A) A = A + 3 .AutoFilter End With Next End With End With Application.ScreenUpdating = True End Sub '-------------------------------------------
MichD -------------------------------------------- "magic-dd" a écrit dans le message de groupe de discussion :
Bonsoir à tous,
n'aarivant pas à ce que je souhaite faire, je fais donc appel à la communauté.
j'ai une liste avec des noms et des activites
j'aimerais extraire de la liste les noms suivant un critere ( le chiffre 4)
donc tout ceux qui ont 4 seront inscrit dans une nouvelle plage de cellule
je vous joins un fichier xls, qui sera plus simple à comprendre
merci d'avance
http://cjoint.com/?ADoxbANieNC
Bonjour,
Tu peux utiliser un filtre automatique.
Colles ceci dans un module du fichier que tu as publié et
observe le résultat :
'-------------------------------------------
Sub test()
Dim Rg As Range, A As Integer, Sh As Worksheet
Set Sh = Worksheets("Feuil2")
Application.ScreenUpdating = False
With Sh
With .Range("B2:I8")
A = 2
'Pour chacune des colonnes, tu appliques un filtre auto.
For Each c In Array(6, 7, 8)
With .Columns(c)
.AutoFilter field:=1, Criteria1:=4
.SpecialCells(xlCellTypeVisible).Copy Sh.Cells(20, A)
A = A + 3
.AutoFilter
End With
Next
End With
End With
Application.ScreenUpdating = True
End Sub
'-------------------------------------------
MichD
--------------------------------------------
"magic-dd" a écrit dans le message de groupe de discussion :
5c536e08-d2e9-4f92-bab6-6e2d5064f458@l2g2000prg.googlegroups.com...
Bonsoir à tous,
n'aarivant pas à ce que je souhaite faire, je fais donc appel à la
communauté.
j'ai une liste avec des noms et des activites
j'aimerais extraire de la liste les noms suivant un critere ( le
chiffre 4)
donc tout ceux qui ont 4 seront inscrit dans une nouvelle plage de
cellule
je vous joins un fichier xls, qui sera plus simple à comprendre
Colles ceci dans un module du fichier que tu as publié et observe le résultat :
'------------------------------------------- Sub test()
Dim Rg As Range, A As Integer, Sh As Worksheet
Set Sh = Worksheets("Feuil2")
Application.ScreenUpdating = False With Sh With .Range("B2:I8") A = 2 'Pour chacune des colonnes, tu appliques un filtre auto. For Each c In Array(6, 7, 8) With .Columns(c) .AutoFilter field:=1, Criteria1:=4 .SpecialCells(xlCellTypeVisible).Copy Sh.Cells(20, A) A = A + 3 .AutoFilter End With Next End With End With Application.ScreenUpdating = True End Sub '-------------------------------------------
MichD -------------------------------------------- "magic-dd" a écrit dans le message de groupe de discussion :
Bonsoir à tous,
n'aarivant pas à ce que je souhaite faire, je fais donc appel à la communauté.
j'ai une liste avec des noms et des activites
j'aimerais extraire de la liste les noms suivant un critere ( le chiffre 4)
donc tout ceux qui ont 4 seront inscrit dans une nouvelle plage de cellule
je vous joins un fichier xls, qui sera plus simple à comprendre
merci d'avance
http://cjoint.com/?ADoxbANieNC
MichD
Bonjour,
Utilise cette macro pour obtenir ce que tu désires dans le fichier publié.
Sub test()
Dim Rg As Range, A As Integer, Sh As Worksheet
Set Sh = Worksheets("Feuil2")
On Error Resume Next Application.ScreenUpdating = False With Sh Set Rg = .Range("B2:I8") A = 2 'Pour chacune des colonnes, tu appliques un filtre auto. For Each c In Array(6, 7, 8) With Rg .AutoFilter field:=c, Criteria1:=4 .Columns(1).SpecialCells(xlCellTypeVisible).Copy Sh.Cells(20, A) Sh.Cells(20, A) = .Item(1, c) End With A = A + 3 .ShowAllData Next Rg.AutoFilter End With Application.ScreenUpdating = True End Sub
Utilise cette macro pour obtenir ce que tu désires dans le fichier publié.
Sub test()
Dim Rg As Range, A As Integer, Sh As Worksheet
Set Sh = Worksheets("Feuil2")
On Error Resume Next
Application.ScreenUpdating = False
With Sh
Set Rg = .Range("B2:I8")
A = 2
'Pour chacune des colonnes, tu appliques un filtre auto.
For Each c In Array(6, 7, 8)
With Rg
.AutoFilter field:=c, Criteria1:=4
.Columns(1).SpecialCells(xlCellTypeVisible).Copy Sh.Cells(20, A)
Sh.Cells(20, A) = .Item(1, c)
End With
A = A + 3
.ShowAllData
Next
Rg.AutoFilter
End With
Application.ScreenUpdating = True
End Sub
Utilise cette macro pour obtenir ce que tu désires dans le fichier publié.
Sub test()
Dim Rg As Range, A As Integer, Sh As Worksheet
Set Sh = Worksheets("Feuil2")
On Error Resume Next Application.ScreenUpdating = False With Sh Set Rg = .Range("B2:I8") A = 2 'Pour chacune des colonnes, tu appliques un filtre auto. For Each c In Array(6, 7, 8) With Rg .AutoFilter field:=c, Criteria1:=4 .Columns(1).SpecialCells(xlCellTypeVisible).Copy Sh.Cells(20, A) Sh.Cells(20, A) = .Item(1, c) End With A = A + 3 .ShowAllData Next Rg.AutoFilter End With Application.ScreenUpdating = True End Sub
bonjour merci pour cette reponse, quelle joie au reveil
maintennt je vais etre ch*** mais est il possible de mettre 2 ou 3 criteres
merci de m'expliquer la macro car je ne maitrise pas trop ces filtres
bonne journée
On 14 avr, 23:54, "MichD" wrote:
Bonjour,
Utilise cette macro pour obtenir ce que tu désires dans le fichier publ ié.
Sub test()
Dim Rg As Range, A As Integer, Sh As Worksheet
Set Sh = Worksheets("Feuil2")
On Error Resume Next Application.ScreenUpdating = False With Sh Set Rg = .Range("B2:I8") A = 2 'Pour chacune des colonnes, tu appliques un filtre auto. For Each c In Array(6, 7, 8) With Rg .AutoFilter field:=c, Criteria1:=4 .Columns(1).SpecialCells(xlCellTypeVisible).Copy Sh.Cells(20, A) Sh.Cells(20, A) = .Item(1, c) End With A = A + 3 .ShowAllData Next Rg.AutoFilter End With Application.ScreenUpdating = True End Sub
bonjour
merci pour cette reponse, quelle joie au reveil
maintennt je vais etre ch*** mais est il possible de mettre 2 ou 3
criteres
merci de m'expliquer la macro car je ne maitrise pas trop ces filtres
bonne journée
On 14 avr, 23:54, "MichD" <michde...@hotmail.com> wrote:
Bonjour,
Utilise cette macro pour obtenir ce que tu désires dans le fichier publ ié.
Sub test()
Dim Rg As Range, A As Integer, Sh As Worksheet
Set Sh = Worksheets("Feuil2")
On Error Resume Next
Application.ScreenUpdating = False
With Sh
Set Rg = .Range("B2:I8")
A = 2
'Pour chacune des colonnes, tu appliques un filtre auto.
For Each c In Array(6, 7, 8)
With Rg
.AutoFilter field:=c, Criteria1:=4
.Columns(1).SpecialCells(xlCellTypeVisible).Copy Sh.Cells(20, A)
Sh.Cells(20, A) = .Item(1, c)
End With
A = A + 3
.ShowAllData
Next
Rg.AutoFilter
End With
Application.ScreenUpdating = True
End Sub
bonjour merci pour cette reponse, quelle joie au reveil
maintennt je vais etre ch*** mais est il possible de mettre 2 ou 3 criteres
merci de m'expliquer la macro car je ne maitrise pas trop ces filtres
bonne journée
On 14 avr, 23:54, "MichD" wrote:
Bonjour,
Utilise cette macro pour obtenir ce que tu désires dans le fichier publ ié.
Sub test()
Dim Rg As Range, A As Integer, Sh As Worksheet
Set Sh = Worksheets("Feuil2")
On Error Resume Next Application.ScreenUpdating = False With Sh Set Rg = .Range("B2:I8") A = 2 'Pour chacune des colonnes, tu appliques un filtre auto. For Each c In Array(6, 7, 8) With Rg .AutoFilter field:=c, Criteria1:=4 .Columns(1).SpecialCells(xlCellTypeVisible).Copy Sh.Cells(20, A) Sh.Cells(20, A) = .Item(1, c) End With A = A + 3 .ShowAllData Next Rg.AutoFilter End With Application.ScreenUpdating = True End Sub
La macro fait simplement un filtre automatique à tour de rôle sur chaque colonne des 3 sports utilisant un critère : = 4
Avec un filtre auto, tu es limité à 2 critères... sinon tu dois utiliser le filtre élaboré. Regarde dans l'aide VBA, tu places le curseur sur autofilter et tu appuies sur F1.
Ceci "For Each c In Array(6, 7, 8)" détermine la colonne de la plage définie par la variable Rg sur laquelle s'exécute le filtre.
MichD -------------------------------------------- "magic-dd" a écrit dans le message de groupe de discussion :
bonjour merci pour cette reponse, quelle joie au reveil
maintennt je vais etre ch*** mais est il possible de mettre 2 ou 3 criteres
merci de m'expliquer la macro car je ne maitrise pas trop ces filtres
bonne journée
On 14 avr, 23:54, "MichD" wrote:
Bonjour,
Utilise cette macro pour obtenir ce que tu désires dans le fichier publié.
Sub test()
Dim Rg As Range, A As Integer, Sh As Worksheet
Set Sh = Worksheets("Feuil2")
On Error Resume Next Application.ScreenUpdating = False With Sh Set Rg = .Range("B2:I8") A = 2 'Pour chacune des colonnes, tu appliques un filtre auto. For Each c In Array(6, 7, 8) With Rg .AutoFilter field:=c, Criteria1:=4 .Columns(1).SpecialCells(xlCellTypeVisible).Copy Sh.Cells(20, A) Sh.Cells(20, A) = .Item(1, c) End With A = A + 3 .ShowAllData Next Rg.AutoFilter End With Application.ScreenUpdating = True End Sub
La macro fait simplement un filtre automatique à tour de rôle sur chaque
colonne des 3 sports utilisant un critère : = 4
Avec un filtre auto, tu es limité à 2 critères... sinon tu dois utiliser le filtre élaboré.
Regarde dans l'aide VBA, tu places le curseur sur autofilter et tu appuies sur F1.
Ceci "For Each c In Array(6, 7, 8)" détermine la colonne de la plage définie par la
variable Rg sur laquelle s'exécute le filtre.
MichD
--------------------------------------------
"magic-dd" a écrit dans le message de groupe de discussion :
4734cab3-968e-487e-82e4-2e5699c4da61@dr5g2000vbb.googlegroups.com...
bonjour
merci pour cette reponse, quelle joie au reveil
maintennt je vais etre ch*** mais est il possible de mettre 2 ou 3
criteres
merci de m'expliquer la macro car je ne maitrise pas trop ces filtres
bonne journée
On 14 avr, 23:54, "MichD" <michde...@hotmail.com> wrote:
Bonjour,
Utilise cette macro pour obtenir ce que tu désires dans le fichier publié.
Sub test()
Dim Rg As Range, A As Integer, Sh As Worksheet
Set Sh = Worksheets("Feuil2")
On Error Resume Next
Application.ScreenUpdating = False
With Sh
Set Rg = .Range("B2:I8")
A = 2
'Pour chacune des colonnes, tu appliques un filtre auto.
For Each c In Array(6, 7, 8)
With Rg
.AutoFilter field:=c, Criteria1:=4
.Columns(1).SpecialCells(xlCellTypeVisible).Copy Sh.Cells(20, A)
Sh.Cells(20, A) = .Item(1, c)
End With
A = A + 3
.ShowAllData
Next
Rg.AutoFilter
End With
Application.ScreenUpdating = True
End Sub
La macro fait simplement un filtre automatique à tour de rôle sur chaque colonne des 3 sports utilisant un critère : = 4
Avec un filtre auto, tu es limité à 2 critères... sinon tu dois utiliser le filtre élaboré. Regarde dans l'aide VBA, tu places le curseur sur autofilter et tu appuies sur F1.
Ceci "For Each c In Array(6, 7, 8)" détermine la colonne de la plage définie par la variable Rg sur laquelle s'exécute le filtre.
MichD -------------------------------------------- "magic-dd" a écrit dans le message de groupe de discussion :
bonjour merci pour cette reponse, quelle joie au reveil
maintennt je vais etre ch*** mais est il possible de mettre 2 ou 3 criteres
merci de m'expliquer la macro car je ne maitrise pas trop ces filtres
bonne journée
On 14 avr, 23:54, "MichD" wrote:
Bonjour,
Utilise cette macro pour obtenir ce que tu désires dans le fichier publié.
Sub test()
Dim Rg As Range, A As Integer, Sh As Worksheet
Set Sh = Worksheets("Feuil2")
On Error Resume Next Application.ScreenUpdating = False With Sh Set Rg = .Range("B2:I8") A = 2 'Pour chacune des colonnes, tu appliques un filtre auto. For Each c In Array(6, 7, 8) With Rg .AutoFilter field:=c, Criteria1:=4 .Columns(1).SpecialCells(xlCellTypeVisible).Copy Sh.Cells(20, A) Sh.Cells(20, A) = .Item(1, c) End With A = A + 3 .ShowAllData Next Rg.AutoFilter End With Application.ScreenUpdating = True End Sub