Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

wie vollen Netzwerkpfad ermitteln?

Forumthread: wie vollen Netzwerkpfad ermitteln?

wie vollen Netzwerkpfad ermitteln?
28.03.2019 07:47:12
michlchen80
Hallo zusammen.
ich habe für eine weitere Datei noch ein 2. kleines Problemchen.
Es handelt sich um eine autom. Speicherfunktion auf einem Netzwerk, sprich der Kollege hat seine Arbeitsdatei und will beim Speichern ne Kopie auf einen Server legen.
Jetzt soll auf diesem Server für jeden (außer ihm selbst) die Datei mit ThisWorkbook.ChangeFileAccess xlReadOnly
geöffnet werden, damit er jederzeit speichern kann und nicht den Fehler "Datei ist durch anderen..." bekommt und diesem dann hinterher dackeln muss. (klappt soweit auch ganz gut)
Dummerweise haben einige Nutzer diesen Pfad als LW verknüpft.
Man müsste doch eigentlich recht einfach aus einem
Z:\mein_Pfad\meine_datei.xlsm
recht einfach ein
\\hier_steht_aber_auch_noch_gedöns\mein_Pfad\meine_datei.xlsm
machen oder?
Als Plan B könnte ich noch mit Stringoperation arbeiten, indem ich den ersten Teil nach dem \\ raus werfe, aber das würde ich gerne vermeiden...
Danke für die Antwort.
Gruß Michl.
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: wie vollen Netzwerkpfad ermitteln?
28.03.2019 08:25:34
Bernd
Servus Michl,
sieh dir diese Beschreibung an:
https://www.mcseboard.de/topic/147874-vom-netzlaufwerk-zum-unc/
Grüße, Bernd
AW: wie vollen Netzwerkpfad ermitteln?
28.03.2019 08:29:47
EtoPHG
Hallo Michl.,
Mit dieser Funktion (in ein Standardmodul):
' EtoP (c) 2018
' translates a DOS-Based DrivePathFilename to UNC-Notation
' Input String: DriveLetter:[\directory\...\[filename]]
Public Function UNCpath(ByVal sPathWithDriveLetter As String) As String
Dim objNtWork  As Object
Dim objDrives  As Object
Dim lxDrive    As Long
Set objNtWork = CreateObject("WScript.Network")
Set objDrives = objNtWork.enumnetworkdrives
UNCpath = sPathWithDriveLetter
For lxDrive = 0 To objDrives.Count - 1 Step 2
If UCase(objDrives.Item(lxDrive)) = UCase(Left(sPathWithDriveLetter, 2)) Then
UNCpath = objDrives.Item(lxDrive + 1) & Right(sPathWithDriveLetter, _
Len(sPathWithDriveLetter) - 2)
Exit For
End If
Next
Set objNtWork = Nothing
Set objDrives = Nothing
End Function
Gruess Hansueli
Anzeige
AW: wie vollen Netzwerkpfad ermitteln?
28.03.2019 09:07:23
michlchen80
ja genial.
ihr seids die besten!
hatte sowas ähnliches auch schon selber gefunden gehabt, aber das hatte dann leider nicht geklappt. deshalb lieber selber kurz nen eintrag machen.
fettes mercy!
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige