Recherche de dossier en vba?

kennedy

XLDnaute Junior
Bonjour à tous :)!

J'aurais souhaité savoir s'il était possible de lancer une recherche de dossier avec vba. De manière à enregistrer un fichier toujours au même endroit quelque soit la machine que j'utilise?

Et comment procéder si cela est possible?

Bonne journée! et merci d'avance!
 

Pierrot93

XLDnaute Barbatruc
Re : Recherche de dossier en vba?

Bonjour,

si c'est toujours au même endroit, on peut supposer qu'il s'agit d'un serveur réseau, si c'est le cas essaye peut être ainsi, enfin si j'ai bien compris... Pas sûr...

Code:
Dim MonRepertoire As String
MonRepertoire = "\\NomServeur\DossiersPartages\Excel\"
ActiveWorkbook.SaveAs MonRepertoire & "MonFichier.xls"

bonne journée
@+
 

kennedy

XLDnaute Junior
Re : Recherche de dossier en vba?

Bonjour Pierrot :)

Je me suis sans doute mal exprimé, désolé :).

En fait je dois enregistrer mon fichier excel toujours dans le même dossier, mais ce dossier peut se trouver à des endroits différents selon la machine.
Du coup je pensais que s'il était possible de lancer une recherche via vba pour ensuite utiliser le résultat de la recherche cela pourrait éventuellement m'aider?
 

david84

XLDnaute Barbatruc
Re : Recherche de dossier en vba?

Bonsoir,
histoire de relancer ce fil car la réponse m'intéresse, tu peux jeter un coup d'œil du côté de
Ce site n'existe plus
Voir peut-être également du côté de la propriété FileType de l'objet FileSearch dans l'aide d'Excel.
Peut-être que l'un de nos experts VBAiste aura la solution.
Si de ton côté tu l'as trouvée, merci de nous la faire partager.
A+
 

YANN-56

XLDnaute Barbatruc
Re : Recherche de dossier en vba?

Bonsoir à tous,

Il y a une solution que j'utilise dans le "Workbook_Open"

Code:
Private Sub Workbook_Open()

' 1) VERIFICATION PREALABLE DU BON CHEMIN QUI VA ETRE SUIVI PAR LE MOTEUR.
' 2) RECHERCHE SI IL N'EST PAS BON.
 '(ON POURRAIT AUSSI AJOUTER QUE LE DOSSIER QUI VA ETRE UTILISE DOIT AVOIR POUR NOM 'ALAIN")

If ActiveWorkbook.Keywords = "" Then ActiveWorkbook.Keywords = "x"
' Le "x" est ajouté...Car en cas de vide; la recherche va quand- même le trouver!!!

If Dir(ActiveWorkbook.Keywords & "\") = "" Then
'---------------------
Set RECHERCHE = Application.FileDialog(msoFileDialogFolderPicker)
   With RECHERCHE
      .Title = "     CHOISIR UN DOSSIER"
      .AllowMultiSelect = False
                If .Show = -1 Then
                For Each CHOIXDOSSIER In .SelectedItems
                DOSSIER_CHOISI = CHOIXDOSSIER
                Next CHOIXDOSSIER
         End If
    End With
Set RECHERCHE = Nothing

ThisWorkbook.Keywords = DOSSIER_CHOISI 'MISE EN MEMOIRE DU CHEMIN
ThisWorkbook.Save

MON_USF.Show vbModeless
' ------------------------------
Else

MON_USF.Show vbModeless

End If

End Sub

On a donc écrit le chemin du Dossier dans la propriété "Mots Clé" du Classeur,
une bonne fois pour toutes. (La question ne sera posée qu'une seule fois, sauf erreur)

Ceci sera valable par suite du déplacement de ce dernier, même sur une clé USB.
Je ne suis plus en réseau, mais j'ai bon souvenir que le fonctionnait aussi.

Amicalement.

Yann
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 329
Messages
2 087 331
Membres
103 519
dernier inscrit
Thomas_grc11