OVH Cloud OVH Cloud

listage de données

12 réponses
Avatar
tribouilloy.david
Bonsoir à tous

Comment lister dans une feuille des données d'une autre feuille qui
correspond à des critères
je m'explique :

Feuille 1 : un tableau avec colonne A des dates (jj/mm/aa)
colonne B C D E F : des données
colonne G des codes à cinq chiffres

Feuille 2 : A1 date de départ B1 Date de fin C1 Code

A partir de la ligne 8 toutes les données qui correspondes au code et au
dates sauf les données
des colonnes C et E de la feuille 1


Merci de votre aide

Salutations.

David

10 réponses

1 2
Avatar
AV
Il est nécessaire que ton tableau de Feuil1 comprenne des étiquettes en ligne 1
(A,B,C,D,E,F,G)

Sub zz_Filtre_Dates()
Application.ScreenUpdating = False
With Sheets("Feuil2")
Ddéb = .[A1] * 1
Dfin = .[B1] * 1
leCod = .[C1]
.[A8:E65536] = ""
End With
With Sheets("Feuil1")
derL = .[A65536].End(3).Row
.[C:C,E:E].EntireColumn.Hidden = True
.[A1].AutoFilter Field:=1, Criteria1:=">=" & Ddéb, Operator:=xlAnd,
Criteria2:="<=" & Dfin
.[A1].AutoFilter Field:=7, Criteria1:=leCod
.Range("A2:G" & derL).SpecialCells(xlCellTypeVisible).Copy
Sheets("Feuil2").Range("A8")
.[C:C,E:E].EntireColumn.Hidden = False
.[A1].AutoFilter
End With
End Sub

AV

"tribouilloy.david" a écrit dans le message news:
bf6lpp$dhc$
Bonsoir à tous

Comment lister dans une feuille des données d'une autre feuille qui
correspond à des critères
je m'explique :

Feuille 1 : un tableau avec colonne A des dates (jj/mm/aa)
colonne B C D E F : des données
colonne G des codes à cinq chiffres

Feuille 2 : A1 date de départ B1 Date de fin C1 Code

A partir de la ligne 8 toutes les données qui correspondes au code et au
dates sauf les données
des colonnes C et E de la feuille 1


Merci de votre aide

Salutations.

David





Avatar
The Boss
Bonjour Alain

Merci pour ta réponse

J'ai mis des étiquettes dans la feuille 1
A1 : Date
B1 : Données1
C1 : Données2
D1 : Données3
E1 : Données4
F1 : Données5
G1 : Code

Je n'ai pas mis d'étiquette dans la feuille 2

J'ai mis la macro dans la Feuille 2

Message d'erreur :
L'indice n'appartient pas à l'execution

Que faire ?
Merci

Salutations
David


Il est nécessaire que ton tableau de Feuil1 comprenne des étiquettes en
ligne 1

(A,B,C,D,E,F,G)

Sub zz_Filtre_Dates()
Application.ScreenUpdating = False
With Sheets("Feuil2")
Ddéb = .[A1] * 1
Dfin = .[B1] * 1
leCod = .[C1]
.[A8:E65536] = ""
End With
With Sheets("Feuil1")
derL = .[A65536].End(3).Row
.[C:C,E:E].EntireColumn.Hidden = True
.[A1].AutoFilter Field:=1, Criteria1:=">=" & Ddéb, Operator:=xlAnd,
Criteria2:="<=" & Dfin
.[A1].AutoFilter Field:=7, Criteria1:=leCod
.Range("A2:G" & derL).SpecialCells(xlCellTypeVisible).Copy
Sheets("Feuil2").Range("A8")
.[C:C,E:E].EntireColumn.Hidden = False
.[A1].AutoFilter
End With
End Sub

AV


Avatar
AV
J'ai mis la macro dans la Feuille 2
?? Tu veux dire le bouton pour l'exécuter ?

Sinon il faut mettre la macro dans un module ordinaire

L'indice n'appartient pas à l'execution
Vérife que les noms de tes feuilles correspondent à ceux présents dans le code

fourni

AV

Avatar
The Boss
L'indice n'appartient pas à l'exécution
En effet je n'avais pas modifier le nom des feuilles



Sinon il faut mettre la macro dans un module ordinaire
J'ai fais un clic droit dans l'onglet de feuille2 et j'ai coller la macro



Maintenant erreur 400

D'autre part, je pense que tu utilise un filtre automatique, n'y a t'il pas
un autre moyen ?
genre : copier les lignes de la feuille1 qui corresponde aux critères et les
coller dans la feuillle2
sans passer par un filtre

Merci de ton aide très précieuse

Salutations

David


Avatar
AV
J'ai fais un clic droit dans l'onglet de feuille2 et j'ai coller la macro


Non, non ! il faut coller la macro dans un module ordinaire !
Copier => Alt+F11 => Insertion => Module => Coller

D'autre part, je pense que tu utilise un filtre automatique, n'y a t'il pas
un autre moyen ? genre : copier les lignes de la feuille1 qui corresponde aux
critères et les

coller dans la feuillle2 sans passer par un filtre


Si, par ex. une boucle mais c'est bcp plus lent !

AV

Avatar
The Boss
Alain

Erreur sur ces lignes :

.Range("A2:G" & derL).SpecialCells(xlCellTypeVisible).Copy
Message : Pas de cellules corespondantes


Sheets("Feuille2").Range ("A8")
Message : Propriété ou méthode non gérée par cet objet

Merci
Salutations

David
Avatar
AV
Erreur sur ces lignes :
.Range("A2:G" & derL).SpecialCells(xlCellTypeVisible).Copy
Sheets("Feuille2").Range ("A8")


Ces 2 lignes n'ont sont qu'une seule !!! (et oui OE coupe les lignes....)
C'est la raison de l'erreur

AV

Avatar
The Boss
Je comprend rien

Ces 2 lignes n'ont sont qu'une seule !!! (et oui OE coupe les lignes....)
C'est la raison de l'erreur


j'ai donc associer les mots .Copy avec Sheets soit .CopySheets
j'ai également essayer :.Copy Sheets (avec un espace)

toujours les memes messages d'erreurs

D'autre part : [A1].AutoFilter Field:=7, Criteria1:=leCod
ne serais t'il pas plutôt : [G1].AutoFilter Field:=7, Criteria1:=leCod

Merci de ton aide

david

Avatar
AV
Exemple dans ta bal....

AV
Avatar
The Boss
C'est exactement cela

Un grand merci

Salutations

David
--
Mail :


"AV" a écrit dans le message de news:

Exemple dans ta bal....

AV




1 2