Lister les fichiers xls

abtony

XLDnaute Impliqué
Bonjour le forum et bon dimanche a tous,

je souhaiterais savoir s'il y a une petite procedure vba qui liste les fichiers xls sur un répertoire précis qui se trouve sur un disque dur externe, et ouvrir le fichier ainsi sélectionné ?

merci a vous et encore une fois un très bon dimanche a vous tous !
 

mth

XLDnaute Barbatruc
Re : Lister les fichiers xls

Bonjour,

Voici une routine formidable qui ne vient pas de moi mais que j'ai trouvée sur ce site il y a quelques temps, je suis désolée mais j'ai oublié l'auteur...
Bien à vous,
M



Worksheets("Import").Select
Range("B5").Select


Dim chemin As String
Dim fichier As String
Dim ligne As Integer

ligne = 5
chemin = ActiveWorkbook.Path & "\"
fichier = Dir(chemin & "*.XLS") ***à adapter éventuellement avec le nom du fichier si celui ci est fixe***
Do While fichier <> ""
Cells(ligne, 1) = fichier: ligne = ligne + 1
fichier = Dir
Loop
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : Lister les fichiers xls

Bojour AbBtony, Mth, bonjour le forum,

En pièce jointe j'ai repris le code de l'inconnu (fourni pas Mth) et je l'ai adapté à une Userform. Avant de tester, pense à modifier le chemin de ton disque dur externe das la procédure Initialize du l'Userform1 ici en rouge

Code:
Private Sub UserForm_Initialize() 'à l'initialisation de l'UserFprm
Dim fichier As String 'déclare la variable fichier
'définit la variable chemin
[COLOR=red]chemin = "ton chemin\" 'écris entre les guillemets ton chemin exact avec l'anti-slash (\) à la fin[/COLOR]
fichier = Dir(chemin & "*.XLS") 'définit la variable fichier
Do While fichier <> "" 'exécute tant qu'il existe des classeurs excel
    ComboBox1.AddItem fichier 'ajoute le nom du classeur à la ComboBox1
    fichier = Dir '?je sais pas pourquoi cette ligne désolé
Loop 'boucle
End Sub
 

Pièces jointes

  • Abtony.xls
    35 KB · Affichages: 183
  • Abtony.xls
    35 KB · Affichages: 186
  • Abtony.xls
    35 KB · Affichages: 189

abtony

XLDnaute Impliqué
Re : Lister les fichiers xls

Bonjour et merci pour la réponse,

j'ai trouvé cette routine

Private Sub UserForm_Initialize()
Dim Fichier As String

Fichier = Dir(ThisWorkbook.Path & "\\Devis*.xls")
Do While Fichier <> ""
If Fichier <> ThisWorkbook.Name Then Listbox1.AddItem Fichier
Fichier = Dir
Loop

End Sub

c'est valable si le classeur home se situe dans le meme répertoire que les fichiers xls.

ce que je souhaite c'est pourvoir accéder avec le fichier home au disque dur externe qui stocke tout mes fichiers devis"".xls, et pour cela il faut indiqué le chemin !! et la quand je change
Fichier = Dir par le chemin sur le disque dur externe ca fonctionne pas ??

une idée !

merci
 

littlefish

XLDnaute Nouveau
Re : Lister les fichiers xls

Bonjour le forum et bon dimanche a tous,

je souhaiterais savoir s'il y a une petite procedure vba qui liste les fichiers xls sur un répertoire précis qui se trouve sur un disque dur externe, et ouvrir le fichier ainsi sélectionné ?

merci a vous et encore une fois un très bon dimanche a vous tous !

Bonjour,

je ne sais pas si cela te sera utile mais il existe une macro sympatique crée par Jean-Yves Messe, disponible sur ThermExcel.
Elle est en format macro complémentaire.
Elle est super pratique, et directement utilisable elle s'appelle listing.

Cordialement, Alexandre
 

herve62

XLDnaute Barbatruc
Supporter XLD
Re : Lister les fichiers xls

Salut
J'avais une appli qui tournait via un serveur ( en entreprise) j'utilisais en début de routine :
ChDir "L:\forecast"
Workbooks.Open FileName:="\\lngsrv03\forecast\Weekly_forecast.XLS"

pour aller chercher les données sur le serveur ( L) et faire tourner ma macro depuis mon PC
et cela fonctionnait très bien
 

abtony

XLDnaute Impliqué
Re : Lister les fichiers xls

merci a tous pour vos réponse aussi précieuses les unes que les autres,
j'ai été sur thermexcel et son prog list les fichiers excel sur une feuille excel !
donc ca ne va pas.

je joint un fichier pour exemple et le but de la manoeuvre est d'avoir ce fichier sur mon bureau, et lister sur la listbox les fichiers xls se trouvant sur un dd externe avec le chemin suivant " F:\PAPA\CHATEAU BATIMENT\"
quand je met ce chemin ca ne fonctionne pas

sur ce disque externe il y a des devis, et en cas de plantage de l'ordis je ne perd rien.

Mon soucis c'est juste une histoire de chemin car dans l'état actuel ca fonctionne si le fichier est sur le meme répertoire que les autres fichiers xls

merci a vous si vous pouvez m'éclairer
 

Pièces jointes

  • liste fichiers.zip
    10.6 KB · Affichages: 132
  • liste fichiers.zip
    10.6 KB · Affichages: 122
  • liste fichiers.zip
    10.6 KB · Affichages: 115

abtony

XLDnaute Impliqué
Re : Lister les fichiers xls

une petite erreur dans le code excuser moi ! il faut remplacer par ca pour que ca fonctionne

Private Sub UserForm_Initialize()
Dim Fichier As String

Fichier = Dir(ThisWorkbook.Path & "\\*.xls")
Do While Fichier <> ""
If Fichier <> ThisWorkbook.Name Then Listbox1.AddItem Fichier
Fichier = Dir
Loop

End Sub
Private Sub ListBox1_Click()
ActiveWorkbook.FollowHyperlink ThisWorkbook.Path & "\\" & Listbox1
Unload Me
End Sub
 

abtony

XLDnaute Impliqué
Re : Lister les fichiers xls

Re tout le monde et le forum,

j'ai pu trouvez une solution que j'ai adapté a ma barre d'outils perso.

c'est très pratique et facilement configurable sur le disque dur de son choix ou qu'il soit ! a essayer absolument.
Fichier joint source excellabo

Merci encore pour votre aide

Bonne soirée a tous
 

Pièces jointes

  • h-combofichiers.zip
    19.1 KB · Affichages: 105

MJ13

XLDnaute Barbatruc
Re : Lister les fichiers xls

Bonjour à tous.

Abtony, je trouve ta dernière version assez complexe pour le plus grand nombre d'Xldiens.
J'ai adapté une de tes précédentes versions que je pense plus simple et qui permet de définir une liste de ses dossiers les plus utilisées et d'avoir la liste des fichiers en se positionnant sur la cellule contenant le nom du chemin du dossier.
 

Pièces jointes

  • liste fichiers abtony modif par MJ.xls
    33 KB · Affichages: 157
Dernière édition:

abtony

XLDnaute Impliqué
Re : Lister les fichiers xls

Bonjour MJ3 et le forum,

oui cette adaptation est très bien, mais tu constatera que si tu a un disque dur en externe, ou même une partition autre que c:\ et que tu y met le chemin ta liste restera vide, ou ca te mettra par défaut le dossiers mes documents sur c:\! je viens de faire le test.

toutefois si un membre souhaite une aide pour ajouter le fichier précédent a sa barre d'outils perso, je me ferais grand plaisir de l'aider.

moi en tout cas je trouve le dossier précédent au poil car tout le temps disponible dans la barre d'outils avec le dossier préféré pour ouvrir les fichiers, et ca fonctionne avec les disque dur en reseau et partitions.

Salutations
 
Dernière édition:

abtony

XLDnaute Impliqué
Re : Lister les fichiers xls

Re,

ca ma fait réfléchir et j'ai adapter une barre en perso.xls a mettre dans xlstart et vous aurait la barre d'outils fichiers préférer a chaque démarage d'excel!

il faudra juste dans le code indiqué votre chemin d'accès soit local, dd externe, partition ou réseau.

vous pouvez égale ajouter des sous dossier !

toujours dans le code a cette ligne mettre true

.SearchSubFolders = False

si vous avez des préférences sur les xls a afficher, par exemples des xls qui commencent toujours par Devis suivis du nom du client alors mettez devant l'asterix .Filename = "Devis*.xls"

Pour ceux qui on déjà un perso.xls ajouter le code tel quel sur votre module

Voila ca servira a tout le monde
 

Pièces jointes

  • PERSO.zip
    11.8 KB · Affichages: 109
  • PERSO.zip
    11.8 KB · Affichages: 111
  • PERSO.zip
    11.8 KB · Affichages: 118

abtony

XLDnaute Impliqué
Re : Lister les fichiers xls

Une remarque : ne fonctionnera pas sous Excel 2007 car FileSearch n'existe plus sous cette version
Pour cela voir https://www.excel-downloads.com/threads/classefilesearch-pour-excel2007.77650/
ainsi que la solution donnée par Michel Lien supprimé

Bonjour KIKI29,

perso je m'y fait pas a excel 2007, je reste en 2003 car j'ai eux pas mal de soucis avec.

Sinon oui j'avais déjà vu la solution a Michel très bien d'ailleurs !
 

Discussions similaires

Réponses
19
Affichages
592

Statistiques des forums

Discussions
312 305
Messages
2 087 082
Membres
103 457
dernier inscrit
fab2614