VBS - Connecter un lecteur reseau sur le premiere lettre disponible

airsage

XLDnaute Junior
Bonjour a tous,

Dans un premier temps.
Je voudrais créer un "programme" permettant de se connecter à une VM depuis plusieurs postes sachant de que chaque poste n'a pas les mêmes lettres de lecteur réseau disponible.

Je m'explique, ma VM est du type \\nom_de_la_VM\Reporting\

poste 1 : la première lettre disponible est "N", d'ou "N:\" = "\\nom_de_la_VM\Reporting"
poste 2 : la première lettre disponible est "O" d'ou "O:\" = "\\nom_de_la_VM\Reporting"


Dans un deuxième temps.
Il faudrait que dans mes constantes de mon fichier excel (qui se trouve dans \\nom_de_la_VM\Reporting\Fichier_excel.xlsb), du type : "Public Const Chemin Fichier_excel As String = "X:\

Ou X:\ serait égal à N:\ pour le poste 1 et O:\ pour le poste 2

Merci par avance pour votre aide.

Cordialement.
 

Nairolf

XLDnaute Accro
Re : VBS - Connecter un lecteur reseau sur le premiere lettre disponible

Salut airasage, salut le forum,

Tu n'as pas besoin de lettre de lecteur pour faire appel à ton fichier "non local" dans vba, le chemin suivant est tout à fait exploitable:
\\nom_de_la_VM\Reporting\Fichier_excel.xlsb
 

airsage

XLDnaute Junior
Re : VBS - Connecter un lecteur reseau sur le premiere lettre disponible

Bonjour Nairolf,

Je suis d'accord avec toi mais les utilisateurs ont aussi besoin de se connecter sur la M en question pour des fichiers sans macro (information non transmise dans la question initiale ;-))

Cordialement.
 

Nairolf

XLDnaute Accro
Re : VBS - Connecter un lecteur reseau sur le premiere lettre disponible

Sur ce coup, je ne saisis pas tout.
Pour comprendre un peu mieux je te poses des questions en vrac:

Par quel biais les utilisateurs "se connecte" à la machine virtuelle ? Via une macro Excel, formule dans fichiers Excel...

Veux-tu qu'Excel attribue une lettre de lecteur réseau?

Peux-tu me donner d'autres éléments pour éclairer ma lanterne.
 

Staple1600

XLDnaute Barbatruc
Re : VBS - Connecter un lecteur reseau sur le premiere lettre disponible

Bonsoir à tous


Pour presque répondre au titre de la discussion.
(Ci-dessous on identifie la première lettre disponible)
(test OK sur mon PC)
Code VBA:
Sub a()
'adapté d'un script de : Hey,Scripting Guy!
Dim objDictionary, test$
Set objDictionary = CreateObject("Scripting.Dictionary")

strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")

Set colDisks = objWMIService.ExecQuery("Select * from Win32_LogicalDisk")


For Each objDisk In colDisks
objDictionary.Add objDisk.DeviceID, objDisk.DeviceID
Next

For i = 67 To 90
strDrive = Chr(i) & ":"
If objDictionary.Exists(strDrive) Then
Else
test = test & strDrive
End If
Next
MsgBox Split(test, ":")(0) & " est la première lettre de lecteur disponible.", vbInformation
End Sub
 

airsage

XLDnaute Junior
Re : VBS - Connecter un lecteur reseau sur le premiere lettre disponible

Merci Staple1600 et Merci david84 pour vos réponses. ça me permet d'avancer sur mon projet, mais je pense que ça va etre plus simple pour moi de trouver une lettre unique pour tout le monde et d'activer la DFS sur la VM.

Merci a tous.
 

Statistiques des forums

Discussions
312 086
Messages
2 085 197
Membres
102 814
dernier inscrit
JLGalley