XL 2016 créer un macro pour rechercher un fichier sur explorateur

MOEZ-TUN

XLDnaute Occasionnel
Bonjour
Est ce que on peux créer un macro pour rechercher un fichier sur explorateur
Merci
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Un essai en PJ.
Il faut modifier la ligne :
VB:
 ChDir "C:\Users\PC_PAPA\Desktop\XLD\"
pour y mettre votre chemin.
Ce pourrait être du genre :
Code:
Sub ChoixFichier()
    'La variable est de type Variant car elle peut prendre les valeurs :
        'Booleenne: (Vrai/Faux) quand l'utilisateur ne sélectionne rien, ou annule l'opération.
        'String: pour renvoyer le nom du fichier sélectionné.
    Dim Fichier As Variant

    ' Mettre ici le chemin désiré. Finir avec un "\"
    ChDir "C:\documentation\machine 1\"
   
    'Affiche la boîte de dialogue "Ouvrir" sur tous les fichiers xlsx.
    ' Supprimer le xlsx si on veut voir tous les fichiers. Par ex :
    ' Fichier = Application.GetOpenFilename("Tous les fichiers (*.*),*.*")
    Fichier = Application.GetOpenFilename("Tous les fichiers (*.xlsx),*.xlsx")

    'On sort si aucun fichier n'a été sélectionné ou si l'utilisateur
    'a cliqué sur le bouton "Annuler", ou sur la croix de fermeture.
    ' Sinon on ouvre le fichier
    If Fichier = False Then
        Exit Sub
    Else
        Workbooks.Open Filename:=Fichier
    End If
End Sub
Attention, pour les chemins on utilise "\" et non "/".
 

Pièces jointes

  • Ouvrir2.xlsm
    15.4 KB · Affichages: 4
  • Essai avec Mchine1.xlsm
    15.2 KB · Affichages: 4

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonsoir tout le monde,
En PJ un essai avec :
VB:
Sub BoucleFichiers()
    Dim Chemin As String, Fichier As String, i As Integer
    ' Efface liste
    Range("A:A").ClearContents
    'Définit le répertoire contenant les fichiers, à modifier. ici fichiers sur écran.
    Chemin = "C:\Users\PC_PAPA\Desktop\"
    'Boucle sur tous les fichiers xls* du répertoire.
    Fichier = Dir(Chemin & "*.xls*")    ' Type xls, xlsx, xlsm, xlsb.
    'Utilisez la syntaxe suivante pour boucler sur tous les types de fichiers:
    'Fichier = Dir(Chemin & "*.*")
    i = 1
    Do While Len(Fichier) > 0
        ' Range le nom du fichier dans la colonne A
        Cells(i, 1) = Fichier
        i = i + 1  ' incrément N° de ligne
        Fichier = Dir()
    Loop
End Sub
En l'état, liste les fichiers xls* présent sur le bureau dans la colonne A.
Chemin et type fichiers à adapter.
 

Pièces jointes

  • ListeFichiers.xlsm
    15.1 KB · Affichages: 5

Discussions similaires

Statistiques des forums

Discussions
311 711
Messages
2 081 796
Membres
101 817
dernier inscrit
carvajal