IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB 6 et antérieur Discussion :

[VB6] Spécifier plusieurs types de fichiers avec FileSearch


Sujet :

VB 6 et antérieur

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 59
    Points : 28
    Points
    28
    Par défaut [VB6] Spécifier plusieurs types de fichiers avec FileSearch
    Bonjour,

    J'aimerais savoir si il est possible de spécifier plusieurs types de fichiers dans

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    With Application.FileSearch
       .FileName = "*.doc"
       .Execute
     
    etc
    Actuellement, pour rechercher plusieurs types de fichiers différents, je lance plusieurs recherche, ce qui finit par être gourmand en ressources. Peut on spécifier plusieurs paramètres dans .FileName ? Du style .FileName = "*.doc","*.xls",etc

    Merci !

  2. #2
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    Non, tu ne peux pas de cette manière mais en utilisant le "FileType", tu peux essayer ça :
    Le "FileType de word est 3, celui d'Excel est 4

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    Sub Chercher()
        With Application.FileSearch
            For j = 3 To 4 'D'abord les fichiers word, ensuite les fichiers Excel
                .LookIn = "D:\xls"
                .SearchSubFolders = True
                '.FileName = "format"
                '.MatchAllWordForms = True
                .FileType = j
                If .Execute() > 0 Then
                    MsgBox "Ce dossier contient " & .FoundFiles.Count & _
                    " fichier(s) répondant aux critères."
                    For i = 1 To .FoundFiles.Count
                        MsgBox .FoundFiles(i)
                    Next i
                Else
                    MsgBox "Aucun fichier n'a été trouvé."
     
                End If
                .NewSearch   'réinitialise le critère de recherche
            Next j
        End With
    End Sub
    Tu dis

    Code inspiré de l'aide Excel ! Penser à faire

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 59
    Points : 28
    Points
    28
    Par défaut
    Merci !

    En fait c'est un peu plus compliqué ce que je dois rechercher... Ce sont ces trois types là :

    *_*_??.pdf
    fn5*.doc
    fn5*.xls

    Voilà le bazar !

    Sinon peut être en utilisant le FileType "msoFileTypeCustom" mais je ne sais pas comment ça marche non plus... Et j'ai beau tourner l'aide dans tous les sens, je trouve pô...

  4. #4
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 543
    Points
    15 543
    Par défaut
    T'as pas beaucoup cherché... ou si tu as cherché, t'as pas beaucoup réfléchi...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    Sub chercherEncore()
    Dim MonTableau(), j, i
    Dim ok As Boolean
    j = 0
        With Application.FileSearch
            .FileType = msoFileTypeAllFiles
            .LookIn = "C:\Mes documents" 
            If .Execute() > 0 Then
                MsgBox "Ce dossier contient " & .FoundFiles.Count & _
                    " fichier(s) répondant aux critères."
                For i = 1 To .FoundFiles.Count
                    ok = InStr(LCase(.FoundFiles(i)), ".xls") <> 0
                    ok = ok Or InStr(LCase(.FoundFiles(i)), ".doc") <> 0
                    ok = ok Or InStr(LCase(.FoundFiles(i)), ".pdf") <> 0
                    If ok Then
                        j = j + 1
                        ReDim Preserve MonTableau(j)
                        MonTableau(j) = .FoundFiles(i)
                        MsgBox .FoundFiles(i)
                    End If
                Next i
            Else
                MsgBox "Aucun fichier n'a été trouvé."
            End If
        End With
    End Sub
    Egalement inspiré de l'aide

    Nom mais...

    Tu dis toujours

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 59
    Points : 28
    Points
    28
    Par défaut
    Merci j'ai réussi à me débrouiller avec ça !

  6. #6
    Membre à l'essai
    Inscrit en
    Juin 2007
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 26
    Points : 21
    Points
    21
    Par défaut
    Citation Envoyé par ouskel'n'or Voir le message
    T'as pas beaucoup cherché... ou si tu as cherché, t'as pas beaucoup réfléchi...

    (...)

    Egalement inspiré de l'aide

    Nom mais...

    Tu dis toujours
    Pas très sympa comme réponse...

    Pour votre information, il est possible d'appliquer des filtres sur les documents Office et toutes ces informations se trouvent sur MSDN, oubliez la touche F1...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    ' exemple de filtres mso
    With Application.FileSearch
            .FileType = msoFileTypeWordDocuments
            .FileTypes.Add msoFileTypeWordDocuments
            .FileTypes.Add msoFileTypeExcelWorkbooks
    FYI :
    MsoFileType can be one of these MsoFileType constants.
    • msoFileTypeAllFiles
    • msoFileTypeBinders
    • msoFileTypeCalendarItem
    • msoFileTypeContactItem
    • msoFileTypeCustom
    • msoFileTypeDatabases
    • msoFileTypeDataConnectionFiles
    • msoFileTypeDesignerFiles
    • msoFileTypeDocumentImagingFiles
    • msoFileTypeExcelWorkbooks
    • msoFileTypeJournalItem
    • msoFileTypeMailItem
    • msoFileTypeNoteItem
    • msoFileTypeOfficeFiles
    • msoFileTypeOutlookItems
    • msoFileTypePhotoDrawFiles
    • msoFileTypePowerPointPresentations
    • msoFileTypeProjectFiles
    • msoFileTypePublisherFiles
    • msoFileTypeTaskItem
    • msoFileTypeTemplates
    • msoFileTypeVisioFiles
    • msoFileTypeWebPages
    • msoFileTypeWordDocuments

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Plusieurs types de fichiers dans un FileListBox
    Par Paindep dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 18/06/2010, 08h53
  2. find sur plusieurs types de fichier
    Par sofiane80 dans le forum Linux
    Réponses: 3
    Dernier message: 12/10/2009, 12h23
  3. Réponses: 10
    Dernier message: 27/05/2008, 15h09
  4. limite de type de fichier avec JChooseFile!
    Par moon5 dans le forum AWT/Swing
    Réponses: 5
    Dernier message: 10/09/2007, 15h20
  5. Réponses: 1
    Dernier message: 21/11/2006, 21h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo