Chemin d'accès au réseau
Résolu
zapp56
-
zapp56 -
zapp56 -
Bonjour,
Toujours VBA-Excel...
Voilà, je développe une application VBA qui nécessite un accès à l'arborescence du réseau.
Pour trouver le dossier auquel les utilisateurs pourraient avoir besoin, j'utilise l'interface "Application.Filedialog(...)".
Je voudrais que l' "InitialFileName" le dossier "réseau" de windows... Quel chemin d'accès dois-je spécifier ???
Toujours VBA-Excel...
Voilà, je développe une application VBA qui nécessite un accès à l'arborescence du réseau.
Pour trouver le dossier auquel les utilisateurs pourraient avoir besoin, j'utilise l'interface "Application.Filedialog(...)".
Je voudrais que l' "InitialFileName" le dossier "réseau" de windows... Quel chemin d'accès dois-je spécifier ???
A voir également:
- Chemin d'accès au réseau
- Acces rapide - Guide
- Le message n'a pas été envoyé car le service n'est pas activé sur le réseau - Forum Xiaomi
- Tu dois avoir accès au live pour passer live en tant qu'invité - Forum TikTok
- Cable reseau player freebox - Forum Freebox
- Entrer les informations d'identification reseau - Guide
2 réponses
Bonjour,
Comme te dis cs_Le Pivert (salutations au passage), avant de lancer Application.FileDialog, tu te dois de te "placer" "sur" le répertoire voulu.
Du coup, il convient d'utiliser ChDir. Celui-ci va donc changer ton répertoire en cours par celui souhaité.
Pour compléter la réponse de Le Pivert, le répertoire auquel tu souhaites accéder est un répertoire spécial de windows. Il comporte donc un chemin d'accès spécifique.
Pour retrouver tous les chemins d'accès aux répertoires spéciaux de ton pc, tu peux utiliser cette fonction (en commentaire tu as la description des répertoires):
Que tu peux appeler de cette manière :
Comme te dis cs_Le Pivert (salutations au passage), avant de lancer Application.FileDialog, tu te dois de te "placer" "sur" le répertoire voulu.
Du coup, il convient d'utiliser ChDir. Celui-ci va donc changer ton répertoire en cours par celui souhaité.
Pour compléter la réponse de Le Pivert, le répertoire auquel tu souhaites accéder est un répertoire spécial de windows. Il comporte donc un chemin d'accès spécifique.
Pour retrouver tous les chemins d'accès aux répertoires spéciaux de ton pc, tu peux utiliser cette fonction (en commentaire tu as la description des répertoires):
Declare Function SHGetSpecialFolderLocation Lib "shell32" (ByVal hwnd As Long, ByVal folderid As Long, shidl As ITEMIDLIST) As Long
Declare Function SHGetPathFromIDList Lib "shell32" Alias "SHGetPathFromIDListA" (ByVal shidl As Long, ByVal shPath As String) As Long
Type SHITEMID
SHItem As Long
itemID() As Byte
End Type
Type ITEMIDLIST
shellID As SHITEMID
End Type
Public Enum Repertoire
FavorisCommuns = 1 ' Favoris communs
DemarrerProgrammes = 2 ' Dossier Programmes du menu Démarrer
Documents = 5 ' Mes documents (ou Documents sur Vista/7/8)
Favoris = 6 ' Favoris
DemarrerDemarrage = 7 ' Dossier Démarrage du menu Démarrer
DocumentsRecents = 8 ' Documents récents
EnvoyerVers = 9 ' Dossier "Envoyer vers"
Demarrer = 11 ' Dossier du menu Démarrer
Bureau = 16 ' Bureau
RaccourcisReseau = 19 ' Raccourcis Réseau
Modeles = 21 ' Dossier des modèles de documents
DemarrerCommun = 22 ' Menu Démarrer commun
DemmarrerProgrammesCommun = 23 ' Dossier commun Programmes du menu Démarrer
DemarrerDemarrageCommun = 24 ' Dossier commun Démarrage du menu Démarrer
BureauCommun = 25 ' Bureau commun (public)
Application = 26 ' Dossier Applications (AppData)
RaccourcisImprimantes = 27 ' Raccourcis Imprimantes
FichierInternetTemporaires = 32 ' Dossier des fichiers Internet temporaires
Cookies = 33 ' Cookies
Historique = 34 ' Historique de navigation
Programmes = 38 ' Program Files
End Enum
Function Chemin(lngDossier As Long) As String
Dim CheminTemp As String, dtuID As ITEMIDLIST, lngRes As Long
lngRes = SHGetSpecialFolderLocation(0&, lngDossier, dtuID)
If lngRes = 0 Then
CheminTemp = String$(512, Chr$(0))
lngRes = SHGetPathFromIDList(ByVal dtuID.shellID.SHItem, ByVal CheminTemp)
If lngRes Then Chemin = Left$(CheminTemp, InStr(CheminTemp, Chr$(0)) - 1)
End If
End Function
Que tu peux appeler de cette manière :
Sub Rep_Special() MsgBox Chemin(19) '19 pour Raccourcis Réseau (cf Enum ci-dessus) End Sub
Bonjour,
Comme ceci:
Comme ceci:
Dim chemin As Variant
ChDir "C:\Users\....\Documents\" 'adapter chemin dossier à ouvrir
chemin = Application.GetOpenFilename("Classeurs Excel (*.xls), *.xls")
Merci de ta réponse, mais j'ai dû mal m'exprimer...
Je cherche un dossier particulier, le dossier "Réseau" ou "Favoris réseau" (peut-être devrais-je plutôt dire "lecteur réseau"), c'est à dire celui en dessous des lecteurs "C;D;E...;" dans l'explorateur windows.
De sorte que l'utilisateur ait dans l'interface "filedialog" la liste de tous les équipements connectés au réseau auquel il appartient et qu'il puisse sélectionner l'équipement cible.
Je cherche un dossier particulier, le dossier "Réseau" ou "Favoris réseau" (peut-être devrais-je plutôt dire "lecteur réseau"), c'est à dire celui en dessous des lecteurs "C;D;E...;" dans l'explorateur windows.
De sorte que l'utilisateur ait dans l'interface "filedialog" la liste de tous les équipements connectés au réseau auquel il appartient et qu'il puisse sélectionner l'équipement cible.