Recherche une partie d'un nom de fichier

thkiller Messages postés 168 Date d'inscription mercredi 24 mai 2006 Statut Membre Dernière intervention 11 septembre 2007 - 27 juin 2006 à 13:40
thkiller Messages postés 168 Date d'inscription mercredi 24 mai 2006 Statut Membre Dernière intervention 11 septembre 2007 - 28 juin 2006 à 09:03
Bonjour à tous,

Je pense que tout est dis dans le tire du post et (j'ais fait des recherche via le moteur mais pas trouve pour le nom du fichier ou pas vue) donc voila en gros je saisie mon path dasn un textbox et ce que je veu rechercher dans un autre y a t-il une fonction membre qui recherche le nom des fichiers ?

Merci !

5 réponses

gallyhc Messages postés 386 Date d'inscription samedi 4 octobre 2008 Statut Membre Dernière intervention 19 février 2018 2
27 juin 2006 à 15:22
Bonjour,

Avec juste une petite fonction y a pas de problème, si j'ai bien compris voici le code source qu'il vous faut...

Private Function setFindString(ByVal strString As String) As String
' DECLARATION DES VARIABLES.
    Dim lngI    As Long
    Dim lngJ    As Long
    Dim lngK    As Long


' ROUTINE DE PURGE DU STRING.
    lngJ = Len(strString)
    For lngI = &H1 To lngJ Step &H1
        lngK = InStr(lngI, strString, "")
        If lngK = &H0 Then
            setFindString = Mid$(strString, lngI - &H1, lngJ - (lngI - &H2))
            Exit Function
            Else
                lngI = lngK + &H1
        End If
    Next lngI


End Function

Il s'utilise de la façon suivante :

MsgBox (setFindString("c:\test\tesrep\fichiertest.exe"))

@++
[Gally Home Corp]
0
gallyhc Messages postés 386 Date d'inscription samedi 4 octobre 2008 Statut Membre Dernière intervention 19 février 2018 2
27 juin 2006 à 19:34
Rebonjour,

Il serait pas mal de dire si le code est bon ou pas... et de la valider si cela est correcte...

A++
[Gally Home Corp]
0
thkiller Messages postés 168 Date d'inscription mercredi 24 mai 2006 Statut Membre Dernière intervention 11 septembre 2007
28 juin 2006 à 00:16
désolé j'ais pas le temps now mais je matte ca demain à la première heure promis !!
merci (en cas je me suis débrouillé donc ........)
0
katsankat Messages postés 571 Date d'inscription vendredi 30 décembre 2005 Statut Membre Dernière intervention 12 juillet 2012 3
28 juin 2006 à 06:32
http://www.codyx.org/snippet_recuperer-titre-fichier_57.aspx

Perso j' utilise une troisième méthode en 3 lignes de code (avec split) qui est dans ma source éditeur de texte.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
thkiller Messages postés 168 Date d'inscription mercredi 24 mai 2006 Statut Membre Dernière intervention 11 septembre 2007
28 juin 2006 à 09:03
re,

cela me parais bien compliquer et j'ai choisi d'utilisé en personnalisant une source !!

voici le code :

Public Sub CHERCH_FICHIER(ByVal DossierDepart As String, Lst As ListBox, Optional Ext As String)
'-Rechercher tous les fichiers d'un dossier
  On Error Resume Next
'-Déclarations
  Dim lpFindFileData As WIN32_FIND_DATA
  Dim lFileHdl  As Long
  Dim lRet      As Long
  Dim sTemp     As String
  Dim ExtTmp As String
  '-Test:Si Var DossierDepart = ""
    If DossierDepart = "" Then Exit Sub
  '-Test:Slash
    If Right(DossierDepart, 1) <> "" Then DossierDepart = DossierDepart & ""
  '-Recherche un fichier ou dossier à partir d'un nom de fichier ou de dossier
  '-Départ de la recherche
    lFileHdl = FindFirstFile(DossierDepart & "*.*", lpFindFileData)
    If lFileHdl <> 0 Then
        Do Until lRet = ERROR_NO_MORE_FILES
          '-Test:Si l'attribut est celui d'un fichier
            If (lpFindFileData.dwFileAttributes And FILE_ATTRIBUTE_DIRECTORY) <> 16 Then
                  '-Suppression des zéros
                    sTemp = SUPP_ZERO(lpFindFileData.cFileName)
              '  If sTemp <> "." And sTemp <> ".." Then
                '-Si un filtre de recherche d'extension est demandée alors
                  If InStr(1, sTemp, Text1.Text) <> 0 Then
                    Lst.AddItem DossierDepart & sTemp
                  End If
              '  End If
            End If
          '-Recherche le fichier ou le dossier suivant correspondant au fichier ou au dossier spécifié
            lRet = FindNextFile(lFileHdl, lpFindFileData)
            If lRet = 0 Then Exit Do
        Loop
    End If
  '-Referme un handle de recherche crée par la fonction FindFirstFile
    lRet = FindClose(lFileHdl)
End Sub

Je suppose qu'il y à du code supperflux car ne comprend pas trés bien ce qui est fait mais bon ca me liste mes fichiers dans la liste box et c'est déjà pas mal :

au cas ou je présice mon but :

Je doit réaliser une recherche de fichier dans un dossier dans un premier temps.
Puis je doit réaliser un enregistrement de chaque fichier (excel sélectionné) dans ma base de donnée et si l'enregistrement et déjà présent ne pas faire l'enregistrement !!

Voila rien de plus facile non ? lol
0
Rejoignez-nous