Publicité
+ Répondre à la discussion Actualité déjà publiée
Page 2 sur 2 PremièrePremière 12
Affichage des résultats 21 à 37 sur 37
  1. #21
    Expert Confirmé Sénior

    Homme Profil pro Philippe Tulliez
    Formateur Office et développeur VBA (Excel, Access et Word)
    Inscrit en
    janvier 2010
    Messages
    4 616
    Détails du profil
    Informations personnelles :
    Nom : Homme Philippe Tulliez
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA (Excel, Access et Word)

    Informations forums :
    Inscription : janvier 2010
    Messages : 4 616
    Points : 9 912
    Points
    9 912

    Par défaut

    Bonjour Chris,
    Effectivement j'avais le même message d'erreur lors de mes tests (#NOM?) ce qui est normal comme message d'erreur mais curieux pour le résultat positif qu'il engendre. A creuser.
    Philippe Tulliez
    http://philippe.tulliez.be
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)

    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Dernier article : Excel – Créer un affichage personnalisé sans VBA
    Mes contributions : Fonction Incrémentation d'un n° (Compteur) - Procédure de tri pour Excel 2003-2010

  2. #22
    Membre du Club
    Inscrit en
    octobre 2006
    Messages
    59
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : octobre 2006
    Messages : 59
    Points : 40
    Points
    40

    Par défaut Super !!!!

    Bravo et merci pour ce tutoriel qui m'a permis de découvrir cette fonctionnalité de façon rapide et claire
    L'erreur n'annule pas la valeur de l'effort accompli.
    Frédéric

  3. #23
    Expert Confirmé Sénior

    Homme Profil pro Philippe Tulliez
    Formateur Office et développeur VBA (Excel, Access et Word)
    Inscrit en
    janvier 2010
    Messages
    4 616
    Détails du profil
    Informations personnelles :
    Nom : Homme Philippe Tulliez
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA (Excel, Access et Word)

    Informations forums :
    Inscription : janvier 2010
    Messages : 4 616
    Points : 9 912
    Points
    9 912

    Par défaut

    Bonjour Frédéric,
    Merci pour tes congratulations.
    Philippe
    Citation Envoyé par fredo38 Voir le message
    Bravo et merci pour ce tutoriel qui m'a permis de découvrir cette fonctionnalité de façon rapide et claire
    Philippe Tulliez
    http://philippe.tulliez.be
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)

    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Dernier article : Excel – Créer un affichage personnalisé sans VBA
    Mes contributions : Fonction Incrémentation d'un n° (Compteur) - Procédure de tri pour Excel 2003-2010

  4. #24
    Expert Confirmé Sénior
    Homme Profil pro Nicolas
    Ingénieur d'Etude Mainframe
    Inscrit en
    novembre 2012
    Messages
    709
    Détails du profil
    Informations personnelles :
    Nom : Homme Nicolas
    Âge : 33
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Ingénieur d'Etude Mainframe
    Secteur : Finance

    Informations forums :
    Inscription : novembre 2012
    Messages : 709
    Points : 4 033
    Points
    4 033

    Par défaut

    Merci beaucoup pour ce tutoriel ! Autant le filtre de "base" est connu autant ce genre de filtre élaboré est assez bluffant en terme de possibilités !

  5. #25
    Membre chevronné Avatar de issoram
    Homme Profil pro Zeco
    Développeur informatique
    Inscrit en
    janvier 2009
    Messages
    619
    Détails du profil
    Informations personnelles :
    Nom : Homme Zeco
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : janvier 2009
    Messages : 619
    Points : 718
    Points
    718

    Par défaut

    Merci Philippe pour ce tutoriel.

    Une fonctionnalité d'Excel que je ne connaissais pas et qui m'a l'air fort pratique.
    Je teste tout ça de suite.

    Suite du message: Je viens de finir le tutoriel, c'est super clair, merci encore et félicitations!
    En somme c'est un équivalent du SELECT FROM WHERE Sql sur une table de données => super pratique.

    Par contre en termes de performance, ça donne quoi sur des grosses tables avec filtres complexes?

  6. #26
    Expert Confirmé Sénior

    Homme Profil pro Philippe Tulliez
    Formateur Office et développeur VBA (Excel, Access et Word)
    Inscrit en
    janvier 2010
    Messages
    4 616
    Détails du profil
    Informations personnelles :
    Nom : Homme Philippe Tulliez
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA (Excel, Access et Word)

    Informations forums :
    Inscription : janvier 2010
    Messages : 4 616
    Points : 9 912
    Points
    9 912

    Par défaut

    Bonjour Darkzimus,
    Citation Envoyé par Darkzinus Voir le message
    Merci beaucoup pour ce tutoriel ! Autant le filtre de "base" est connu autant ce genre de filtre élaboré est assez bluffant en terme de possibilités !
    Merci pour ton appréciation qui me fait extrêmement plaisir.
    Philippe
    Philippe Tulliez
    http://philippe.tulliez.be
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)

    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Dernier article : Excel – Créer un affichage personnalisé sans VBA
    Mes contributions : Fonction Incrémentation d'un n° (Compteur) - Procédure de tri pour Excel 2003-2010

  7. #27
    Expert Confirmé Sénior

    Homme Profil pro Philippe Tulliez
    Formateur Office et développeur VBA (Excel, Access et Word)
    Inscrit en
    janvier 2010
    Messages
    4 616
    Détails du profil
    Informations personnelles :
    Nom : Homme Philippe Tulliez
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA (Excel, Access et Word)

    Informations forums :
    Inscription : janvier 2010
    Messages : 4 616
    Points : 9 912
    Points
    9 912

    Par défaut

    Bonjour Zeco,
    Citation Envoyé par issoram Voir le message
    Merci Philippe pour ce tutoriel.
    Une fonctionnalité d'Excel que je ne connaissais pas et qui m'a l'air fort pratique.
    Je teste tout ça de suite.
    Suite du message: Je viens de finir le tutoriel, c'est super clair, merci encore et félicitations!
    En somme c'est un équivalent du SELECT FROM WHERE Sql sur une table de données => super pratique.
    Par contre en termes de performance, ça donne quoi sur des grosses tables avec filtres complexes?
    Merci aussi pour ton gentil commentaire qui donne envie de continuer à partager ses connaissances.
    Pour ce qui est des performances, je viens à l'instant de faire un test sur une liste de données de 65000 lignes et 4 colonnes ($A$1:$D$65001) avec un filtre portant sur une zone de critères de 2 lignes et 3 colonnes ($G$1:$I$3).
    Sexe|Crit |Véhicule
    ...F...|FAUX|
    .......|........|Opel
    Le critère calculé est =ANNEE(C2)=1966

    Test effectué à l'aide de la fonction qui est présente dans le classeur qui accompagne le tutoriel.
    Dans cet exemple 10 038 lignes sont exportées avec création de la feuille qui reçoit les lignes exportées. Temps 2 secondes 32
    Philippe Tulliez
    http://philippe.tulliez.be
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)

    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Dernier article : Excel – Créer un affichage personnalisé sans VBA
    Mes contributions : Fonction Incrémentation d'un n° (Compteur) - Procédure de tri pour Excel 2003-2010

  8. #28
    Membre chevronné Avatar de issoram
    Homme Profil pro Zeco
    Développeur informatique
    Inscrit en
    janvier 2009
    Messages
    619
    Détails du profil
    Informations personnelles :
    Nom : Homme Zeco
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : janvier 2009
    Messages : 619
    Points : 718
    Points
    718

    Par défaut

    Merci pour la réponse,

    Si j'ai un peu de temps je ferais des comparatifs de performances vs l'utilisation de tableaux en VBA.

    Et merci encore de partager (de ton temps et tes connaissances) et de contribuer à enrichir la bibliothèque des tutoriels.

  9. #29
    Rédacteur
    Avatar de Ormonth
    Homme Profil pro Didier GONARD
    Formateur Office et développeur VBA en freelance
    Inscrit en
    février 2008
    Messages
    2 772
    Détails du profil
    Informations personnelles :
    Nom : Homme Didier GONARD
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA en freelance

    Informations forums :
    Inscription : février 2008
    Messages : 2 772
    Points : 6 130
    Points
    6 130

    Par défaut

    Bonjour issoram;

    Citation Envoyé par issoram Voir le message
    Si j'ai un peu de temps je ferais des comparatifs de performances vs l'utilisation de tableaux en VBA.
    Au niveau du contexte, via Excel, on passe en langage natif, les similitudes entre ll’organisation d'une feuille et les variables tableaux, plus le fait qu'on puisse dans les deux sens injecter l'un dans l'autre direct, laisse à penser que c'est, en partie, le mode de fonctionnement d'Excel.
    Donc si on pilote Excel sur des fonctions natives via VBA, on doit gagner par rapport à monter une plage dans un tableau, exécuter du code et redescendre.

    mes test pour ce fil vont dans le même sens que Philippe :
    Sinon, dès que les données sont nombreuses tu as intérêt à éviter les boucles quel quelles soient car elles sont chronophages.

    Dans un cas comme le tien passer par un filtre auto ou avancé, à un stade donné, pour récupérer les données voulues serait surement bien plus rapide.
    Pour exemple, sur un fichier de données de villes de 146 727 lignes et 2 346 687 cellules, je récupère une table de 2329 lignes et 37 249 cellules en l'espace de moins d'une seconde avec une extraction vers autre emplacement d'un filtre avancé...
    cordialement,

    Didier
    Didier Gonard

    Dernier tutoriel :
    Le VBA qu'est ce que c'est ?
    Tutoriels : Voir la liste de mes tutoriels Excel & VBA et mon site pro sur ma Page DVP
    N'oubliez pas de mettre : ..quand c'est le cas !

  10. #30
    Expert Confirmé Sénior

    Homme Profil pro Philippe Tulliez
    Formateur Office et développeur VBA (Excel, Access et Word)
    Inscrit en
    janvier 2010
    Messages
    4 616
    Détails du profil
    Informations personnelles :
    Nom : Homme Philippe Tulliez
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA (Excel, Access et Word)

    Informations forums :
    Inscription : janvier 2010
    Messages : 4 616
    Points : 9 912
    Points
    9 912

    Par défaut

    Bonjour,
    Cette discussion sur le forum m'a inspiré un nouvel exemple dans l'utilisation des filtres avancés.
    Dans un classeur Excel nous avons une liste de données ayant en colonne A le nom de différents services d'une entreprise et dans les autres colonnes d'autres données.
    L'idée est d'envoyer un classeur contenant une feuille à chacun des services concernés avec les données qui lui sont propres.
    Les zones :
    de données en feuille [db] avec en colonne A le nom des services,
    de critères cellules $C$1:$C$2 dans la feuille [Param]
    La feuille [Param] contiendra également la liste des services qui aura été exportée sans les doublons par la même méthode advancedFilter
    La procédure
    Elle se déroulera en deux étapes dont la deuxième est subdivisée en trois parties.
    Etape 1 : Création d'une liste unique basée sur la colonne 1 (Services).
    Etape 2 : Dans une boucle
    2.1 Création nouvelle feuille
    2.2 Exportation vers nouvelle feuille
    2.3 Déplacement de cette nouvelle feuille vers un nouveau classeur
    Le code de la procédure
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    Sub ExportDataByAdvancedFilter()
     ' Déclaration + Initialisation des variables
     Dim rngList As Range, rngData As Range, rngCriteria As Range, r As Long
     Set rngData = shtData.Range("A1").CurrentRegion
     With shtParam
      Set rngList = .Range("A1"): Set rngCriteria = .Range("C1:C2")
     End With
     ' Etape 1 - Création d'une liste unique basée sur la colonne 1
     With rngData
     .Resize(, 1).AdvancedFilter Action:=xlFilterCopy, CopyToRange:=rngList, Unique:=True
     End With
     ' Etape 2 - Boucle sur la liste avec placement du critère
     '           Création nouvelle feuille
     '           Exportation vers nouvelle feuille
     '           Déplacement de cette nouvelle feuille vers un nouveau classeur
     For r = 1 To rngList.CurrentRegion.Rows.Count - 1
      rngCriteria.Cells(2, 1) = rngList.Offset(r) ' Insère le critère
      ' 2.1 - Création d'une feuille
      Sheets.Add before:=Sheets(1): Sheets(1).Name = rngList.Offset(r)
      ' 2.2 - Exportation vers nlle feuille suivant critère
      With rngData
      .AdvancedFilter xlFilterCopy, rngCriteria, Sheets(1).Range("A1")
      End With
      ' 2.3 - Déplacement de la feuille cers un nouveau classeur
      Sheets(1).Move
      '
      ' Ici code pour sauver classeur, Envoyer par email etc...
      '
     Next
    End Sub
    Fichiers attachés Fichiers attachés
    Philippe Tulliez
    http://philippe.tulliez.be
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)

    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Dernier article : Excel – Créer un affichage personnalisé sans VBA
    Mes contributions : Fonction Incrémentation d'un n° (Compteur) - Procédure de tri pour Excel 2003-2010

  11. #31
    Invité de passage
    Inscrit en
    octobre 2008
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : octobre 2008
    Messages : 13
    Points : 4
    Points
    4

    Par défaut

    J'ai pas bien été rapide sur ce coup mais voila:
    il suffit de rajouter:

    Code :
    1
    2
     ' Déclaration + Initialisation des variables
     Dim rngList As Range, rngData As Range, rngCriteria As Range, r As Long, Fichier As String, Chemin As String
    et

    Code :
    1
    2
    3
    4
    5
    6
      ' Ici code pour sauver classeur, Envoyer par email etc...
      '
    Fichier = rngList.Offset(r)
    Chemin = "C:\Users\moncompte\Documents\dossier\juin 2013\"
    ActiveWorkbook.SaveAs Chemin & Fichier
    ActiveWorkbook.Close SaveChanges:=True
    pour qu'automatiquement mes classeurs s'enregistrent
    je gagne un temps précieux.

    ce qu'il me reste a faire c'est comprendre comment copier aussi une feuille supplémentaire et que les cacluls qu'elle contient fonctionnent

    Merci de votre aide pour le boulot deja fourni !

  12. #32
    Invité de passage
    Inscrit en
    octobre 2008
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : octobre 2008
    Messages : 13
    Points : 4
    Points
    4

    Par défaut

    Bonjour,

    je remonte ce fil car j'achoppe toujours si la possibilité de rajouter une feuille contenant des calculs ayant pour source l'extraction de données.

    si quelqu'un avait une idée cela serai fort aimable !!

    Merci

  13. #33
    Expert Confirmé Sénior

    Homme Profil pro Philippe Tulliez
    Formateur Office et développeur VBA (Excel, Access et Word)
    Inscrit en
    janvier 2010
    Messages
    4 616
    Détails du profil
    Informations personnelles :
    Nom : Homme Philippe Tulliez
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA (Excel, Access et Word)

    Informations forums :
    Inscription : janvier 2010
    Messages : 4 616
    Points : 9 912
    Points
    9 912

    Par défaut

    Bonjour,
    Je crois qu'il serait bon que tu ouvres un nouveau sujet de discussion et que tu expliques clairement ce que tu souhaites faire car sur cette discussion ouverte à la base pour présenter un tutoriel, tu déposes une partie de réponse qui correspond à une autre discussion Ventiler des lignes dans des classeurs séparés où manifestement le filtre élaboré t'apporte une partie de réponse.
    Philippe Tulliez
    http://philippe.tulliez.be
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)

    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Dernier article : Excel – Créer un affichage personnalisé sans VBA
    Mes contributions : Fonction Incrémentation d'un n° (Compteur) - Procédure de tri pour Excel 2003-2010

  14. #34
    Expert Confirmé Sénior

    Avatar de milkoseck
    Homme Profil pro Malick SECK
    Auditeur
    Inscrit en
    juillet 2012
    Messages
    657
    Détails du profil
    Informations personnelles :
    Nom : Homme Malick SECK
    Âge : 30
    Localisation : Sénégal

    Informations professionnelles :
    Activité : Auditeur
    Secteur : Finance

    Informations forums :
    Inscription : juillet 2012
    Messages : 657
    Points : 5 116
    Points
    5 116

    Par défaut

    Salut,

    Excellent tutoriel que je viens de découvrir. Il me sera d'une grande utilité dans mon travail.

    Merci Philippe.
    Pas de question technique par MP, je ne réponds pas

    Un petit si le message est pertinent
    si votre problème est résolu, n'oubliez pas le Tag
    Mon blog. Mes articles.

  15. #35
    Expert Confirmé Sénior

    Homme Profil pro Philippe Tulliez
    Formateur Office et développeur VBA (Excel, Access et Word)
    Inscrit en
    janvier 2010
    Messages
    4 616
    Détails du profil
    Informations personnelles :
    Nom : Homme Philippe Tulliez
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA (Excel, Access et Word)

    Informations forums :
    Inscription : janvier 2010
    Messages : 4 616
    Points : 9 912
    Points
    9 912

    Par défaut

    Bonjour Malick,
    Le Filtre avancé d'excel est en effet un outil qui quand on en a compris les possibilités offre des possibilités extraordinaire et l'exploiter en VBA permet de gagner de nombreuses lignes de codes.
    Merci d'en avoir apprécié la lecture.
    Philippe
    Philippe Tulliez
    http://philippe.tulliez.be
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)

    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Dernier article : Excel – Créer un affichage personnalisé sans VBA
    Mes contributions : Fonction Incrémentation d'un n° (Compteur) - Procédure de tri pour Excel 2003-2010

  16. #36
    Expert Confirmé Avatar de illight
    Homme Profil pro Olivier
    Chargé d'études statistiques
    Inscrit en
    septembre 2005
    Messages
    1 755
    Détails du profil
    Informations personnelles :
    Nom : Homme Olivier
    Âge : 33
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Chargé d'études statistiques
    Secteur : Service public

    Informations forums :
    Inscription : septembre 2005
    Messages : 1 755
    Points : 2 709
    Points
    2 709

    Par défaut

    Mais il est génial ce truc

    Comme la plupart qui l'ont remarqué, il est vrai que l'on passe souvent les données sous Access pour pouvoir effectuer ce genre de requêtes.

    Ces filtres élaborés, inconnus pour moi, sont une mise d'information très précieuses.
    Je l'ai lu un peu en diagonale, mais si ce genre de problème ressurgit, nul doute que je ferai bon usage de ton tuto
    1. Avant de poster, et http://www.developpez.com/sources/
    2. Lors du post, n'oubliez pas, si besoin les balises CODE => voir ici pour l'utilisation
    3. N'oubliez pas le
    4. N'oubliez pas le si la réponse vous a été utile !

  17. #37
    Expert Confirmé Sénior

    Homme Profil pro Philippe Tulliez
    Formateur Office et développeur VBA (Excel, Access et Word)
    Inscrit en
    janvier 2010
    Messages
    4 616
    Détails du profil
    Informations personnelles :
    Nom : Homme Philippe Tulliez
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA (Excel, Access et Word)

    Informations forums :
    Inscription : janvier 2010
    Messages : 4 616
    Points : 9 912
    Points
    9 912

    Par défaut

    Bonjour Olivier,
    En effet Le filtre élaboré d'excel fait partie de ces outils d'excel comme la consolidation, table de données, etc. sous-exploités par l'utilisateur qui souvent apprend d'une façon empirique ce logiciel.
    Tous ces outils regorgent pourtant de possibilités insoupçonnées et surtout quand on utilise en VBA la méthode qui leur est associée. Cela évite au programmeur des dizaines voir plus de lignes inutiles (voir petit exemple pour le filtre avancé dans cette discussion)

    Merci de ton appréciation pour la lecture de ce tutoriel et d'avoir pris le temps d'en rendre compte, cela fait plaisir.
    Philippe Tulliez
    http://philippe.tulliez.be
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)

    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Dernier article : Excel – Créer un affichage personnalisé sans VBA
    Mes contributions : Fonction Incrémentation d'un n° (Compteur) - Procédure de tri pour Excel 2003-2010

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •