Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

retrouver le chemin d'accès d'un fichier

  • Initiateur de la discussion Initiateur de la discussion barnes83
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

barnes83

XLDnaute Nouveau
bonjour à tous,
je cherche la méthode pour insérer automatiquement dans un code , le chemin d'accès d'un fichier suite à une modification de l'arborescence du réseau.
exemple: antérieurement , mon fichier se trouvait sur "U:\TECH\REUNIONS\mavariable.xls".
suite à réorganisation des services, le fichier se trouve sur "U:\SECTION3D\REUNIONS\mavariable.xls"
il en résulte un bug dans lié à la recherche infructueuse du fichier à ouvrir (worksbook.open....)
merci d'avance pour votre concours
cdlt
 
Bonjour barnes

Elle est un peu bizarre ta demande. 😵 Si tu connais le nouveau chemin : "U:\SECTION3D\REUNIONS\mavariable.xls", tu déclare une variable (Dim fichier As String)

fichier = "U:\SECTION3D\REUNIONS\mavariable.xls"
WorkBooks.Open(fichier)
 
Bonjour Barnes, bonjour le forum,

Il te suffit de faire un Rechercher/Remplacer dans le code VBA (touche de raccourci [Ctrl]+[H]), de taper TECH dans Rechercher, SECTION3D dans Remplacer par, de sélectionner l'option du champ Dans et de valider avec Remplacer tout..

[Édition]
Bonjour Loup solitaire, nos posts se sont croisés...
 
Bonjour à tous,

Un complément ICI
ou un code :
Code:
Option Explicit

Sub Listage()
'Microsoft Scripting Runtime requis
Dim Répertoire As String, Lig&, FSO As New FileSystemObject, Dossier As Folder, Fichier As File
Répertoire = ThisWorkbook.Path
Lig = 1
Cells.ClearContents
On Error Resume Next
Set Dossier = FSO.GetFolder(Répertoire)
If Err Then MsgBox "Accès au dossier """ & Répertoire & """ impossible.", vbCritical, "Recherche": Exit Sub
On Error GoTo 0
For Each Fichier In Dossier.Files
   If Fichier.Name Like "*.*" Then
      Lig = Lig + 1
      Cells(Lig, 1) = Dossier.Name
      Cells(Lig, 2) = Fichier.Name
      End If
   Next Fichier
   Cells.Columns.AutoFit
End Sub
A+ à tous
 
Bonjour Jean Claude 🙂 et les autres 😉 🙂

J'ai trouvé 😉

VB:
Option Explicit

Sub Cherche_Fichier()
Dim Fso As Object, Rep As String, Wb
Dim f1 As Object, f2 As Object, Nom As String

Set Fso = CreateObject("Scripting.FileSystemObject")
Rep = "U:\SECTION3D\"
Nom = "MaisOuEst-ceQuIlEstPassé.xls"

For Each f1 In Fso.GetFolder(Rep).SubFolders
    For Each f2 In f1.Files
    If f2.Name = Nom Then _
        Set Wb = Workbooks.Open(f2)
    Next f2
Next f1
End Sub
 

salut robert

je savais que ma demande était mal formulée! Je la reformule
en fait je veux que ma routine trouve automatiquement le chemin qui permet l'ouverture du fichier afin que l'utilisateur puisse le placer dans n'importe quel répertoire sans que
merci pour ton concours,
je pense que tu as trouvé ,
j'y suis presque mais ca plante encore.
cdlt
 
Re

As-tu changé le nom du fichier? Personnellement je n'ai pas eu de problèmes.

EDIT: essaie comme ceci

VB:
Option Explicit

Sub Test()
Dim Rep$, Nom$

    Rep = "U:\SECTION3D\REUNIONS\"
    Nom = [A2] & ".xls"
  
    If FichierExiste(Rep & Nom) Then
        MsgBox Rep & Nom, vbInformation, "VERIFICATION"
    Else
        MsgBox "Le fichier n'est pas dans ce dossier.", vbExclamation, "VERIFICATION"
    End If
End Sub

Public Function FichierExiste(S As String) As Boolean
Dim fso As Object
    Set fso = CreateObject("Scripting.FileSystemObject")
    FichierExiste = fso.FileExists(S)
End Function
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
1
Affichages
861
Compte Supprimé 979
C
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…