Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1207 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Recuperer liste des documents

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Recuperer liste des documents

n°2193103
86vomito33
Posté le 06-06-2013 à 13:34:40  profilanswer
 

bonjour à tous,
 
J'ai en donnée d'entrée une reference du type SXXX XXXXX XXX XX et un dossier source cible dans lequel les fichiers pdf sont classés dans des repertoires SXXX
 
dans mon fichier excel j'ai 20 lignes de références. je souhaie pour chacune lister dans une cellule tous les fichiers pdf commancant par SXXX XXXXX XXX
 
pour cela j'ai fait le code suivant
 

Code :
  1. Sub RechercheSDF()
  2. Dim Chemin As String, Fichier As String
  3.    
  4. 'Définit le répertoire contenant les fichiers
  5. Chemin = Sheets("Chemin" ).Range("A1" ).Value
  6. For i = 4 To Sheets("Liste" ).Range("C65000" ).End(xlUp).Row Step 1
  7. txt = ""
  8. RefS = Mid(Sheets("Liste" ).Cells(i, 3), 1, 4)
  9. Ref5 = Mid(Sheets("Liste" ).Cells(i, 3), 5, 5)
  10. ref3 = Mid(Sheets("Liste" ).Cells(i, 3), 10, 3)
  11. 'Boucle sur tous les fichiers xls du répertoire.
  12. Fichier = Dir(Chemin & "\" & RefS & "\*.pdf" )
  13. ct = 1
  14. Do While Fichier <> ""
  15.     test = InStr(1, Fichier, "-" )
  16.    
  17.     T5A = Mid(Fichier, 5, 5)
  18.     T5B = Mid(Fichier, 6, 5)
  19.    
  20.     T3A = Mid(Fichier, 1, 3)
  21.     T3B = Mid(Fichier, 1, 3)
  22.     T3C = Mid(Fichier, 1, 3)
  23.     T3D = Mid(Fichier, 1, 3)
  24.         If (T5A = Ref5 Or T5B = Ref5) And (T3A = ref3 Or T3B = ref3 Or T3C = ref3 Or T3D = ref3) Then
  25.         txt = txt & Chr(10) & Fichier
  26.         End If
  27.     Fichier = Dir()
  28.     ct = ct + 1
  29. Loop
  30. Sheets("Liste" ).Cells(i, 6) = txt
  31. Next i
  32. End Sub


 
 
Le résultat reste nul malgres le fait que j'ai bien des fichiers correspondants à ma référence
 
Savez vous ce qui se passe ?
 
Merci de votre aide  

mood
Publicité
Posté le 06-06-2013 à 13:34:40  profilanswer
 

n°2193135
86vomito33
Posté le 06-06-2013 à 13:59:00  profilanswer
 

ca me parait suspect tous ces liens (virus ?)
 
petite précision les T5A B et T3A,B,C,D viennent du fait que les références ont différents formats
SXXXXXXXXXXXXX
SXXX-XXXXXXXXXX
SXXX-XXXXX-XXXXX
SXXX-XXXXX-XXX-XX

n°2193140
Marc L
Posté le 06-06-2013 à 14:07:18  profilanswer
 

 
           Bonjour,
 
           je ne vois pas l'intérêt de quatre variables contenant la même valeur  (lignes n°23 à 26 + test de la ligne n°27)  …
 
           Sinon je suspecte tellement d'incohérences (me trompe-je peut-être ? …) que plutôt d'écrire un roman,
           cela serait plus simple de détailler ta demande et tes critères agrémentés d'un exemple clair …


Message édité par Marc L le 06-06-2013 à 15:31:24
n°2193143
86vomito33
Posté le 06-06-2013 à 14:16:35  profilanswer
 

je suis telement plongé dans ce sujet que je ne me suis meme pas apercu que j'avais oublié de modifier les 4 variables (qui doivent etre différentes vu que les références ont plusieurs formats
 
je regarde ca

n°2193179
Marc L
Posté le 06-06-2013 à 15:40:05  profilanswer
 

 
           Ne serait-il pas plus simple d'effectuer une recherche sur les fichiers pdf commençant par S ?  (S*.pdf)
 
           S'il faut respecter une structure à la lettre, la recherche devrait alors s'effectuer comme ceci :

  •   SXXXXXXXXXXXXX     :   S?????????????.pdf
  •   SXXX-XXXXXXXXXX    :   S???-??????????.pdf  
  •   SXXX-XXXXX-XXXXX   :   S???-?????-?????.pdf
  •   SXXX-XXXXX-XXX-XX  :   S???-?????-???-??.pdf

 

n°2193206
86vomito33
Posté le 06-06-2013 à 18:08:46  profilanswer
 

comment integrer cette recherche dans le code?
merci

n°2193208
Marc L
Posté le 06-06-2013 à 18:49:53  profilanswer
 

 
           Directement dans la fonction Dir , par exemple pour tous les fichiers pdf commençant par S :
 
           Fichier = Dir(Chemin & "\S*.pdf" )
 

n°2193558
86vomito33
Posté le 10-06-2013 à 15:37:19  profilanswer
 

en changeant les 4 variables c bizarres mais ca fonctionne ;)
 
Marc L, le test des fichiers pdf commencant par S n'est pas possible (ce n'est pas vrai tout le temps)
 
Par contre comment géréer des S????????????.pdf ? je ne vois pas comment les intégrer
 
Merci pour votre aide

n°2193564
Marc L
Posté le 10-06-2013 à 16:06:48  profilanswer
 

 
           Toujours dans les arguments de la fonction  Dir  …
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Recuperer liste des documents

 

Sujets relatifs
Récupérer valeur entre deux balisesrecuperer la valeur castée d'une cle de registre
Récupérer les lignes sous forme de liste[PHP] débutant, liste déroulante
liste aléatoire sous ExcelRécupérer des données dans plusieurs fichiers
liste langage C (bug compilation code blocks)lire documents|*. Txt;* .Rtf ;* . Docs ;* . PDF ;* . Xlsx dans Picture
recuperer id en ajax/php 
Plus de sujets relatifs à : Recuperer liste des documents


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR