Registriert seit: 29.09.2015
Version(en): 2030,5
Code:
Sub M_snb()
c00 = "https://firma.sharepoint.com/sites/992764"
MsgBox Application.DefaultFilePath & Split(c00, "/")(UBound(Split(c00, "/")))
End Sub
Registriert seit: 22.02.2025
Version(en): 365
24.02.2025, 21:11
(Dieser Beitrag wurde zuletzt bearbeitet: 24.02.2025, 21:13 von struct.)
[quote pid="300545" dateline="1740407245"]
Code:
Sub M_snb()
c00 = "https://firma.sharepoint.com/sites/992764"
MsgBox Application.DefaultFilePath & Split(c00, "/")(UBound(Split(c00, "/")))
End Sub
[/quote]
Das liefert mir wieder einen Pfad c: und Verweist auf meinen Onedrive Ordner, aber nicht auf den Sharpoint. Der ist auf z: gemappt.
Jürgen
(24.02.2025, 14:11)knobbi38 schrieb: Btw.:
Das ist ein UNC Pfad und keinr URL Angabe.
Leider hat der OP nicht beschrieben, warum die zahlreichen Methoden aus dem Link (#3) nicht funktionieren.
Die Methoden liefern entweder garnichts, oder aber einen Pfad der mit c:\users\ztbau\Onedrive - ... beginnt. da ist der Sharepoint aber nicht, er ist auf z: gemappt.
Jürgen
Registriert seit: 22.09.2024
Version(en): 2010
24.02.2025, 23:33
(Dieser Beitrag wurde zuletzt bearbeitet: 24.02.2025, 23:34 von knobbi38.)
Mal eine ganz dumme Frage: wie bzw. womit hast du das dem Laufwerk z: zugeordnet?
Registriert seit: 22.02.2025
Version(en): 365
(24.02.2025, 23:33)knobbi38 schrieb: Mal eine ganz dumme Frage: wie bzw. womit hast du das dem Laufwerk z: zugeordnet?
Im File Explorer. Mit "Netzlaufwerk verbinden" oder so.
Registriert seit: 22.09.2024
Version(en): 2010
25.02.2025, 00:26
(Dieser Beitrag wurde zuletzt bearbeitet: 25.02.2025, 00:27 von knobbi38.)
Dann ist vielleicht WebDAV im Spiel. Du könntest mal die Registry auf die Mappings durchsuchen HKEY_USERS\<USER>\Network oder versuchen, mit WMI die Informationen auszulesen. In der Powershell:
Code:
> Get-CimInstance -ClassName Win32_LogicalDisk
> Get-CimInstance -ClassName Win32_MappedLogicalDisk
oder
> Get-PSDrive
> Get-SMBMapping
Vielleicht findest du dabei ja deine Laufwerkszuordnung mit der URL Angabe. Dann könnte man da weiter suchen.
Gruß
Knobbi38
Registriert seit: 22.02.2025
Version(en): 365
(25.02.2025, 00:26)knobbi38 schrieb: Dann ist vielleicht WebDAV im Spiel. Du könntest mal die Registry auf die Mappings durchsuchen HKEY_USERS\<USER>\Network oder versuchen, mit WMI die Informationen auszulesen. In der Powershell:
Code:
> Get-CimInstance -ClassName Win32_LogicalDisk
> Get-CimInstance -ClassName Win32_MappedLogicalDisk
oder
> Get-PSDrive
> Get-SMBMapping
Vielleicht findest du dabei ja deine Laufwerkszuordnung mit der URL Angabe. Dann könnte man da weiter suchen.
Gruß
Knobbi38
Das funktioniert im Prinzip, gibt mir aber nur den UNC zu den gemappten Laufwerkbuchstaben aus. Was aber die URL dazu ist, sehe ich nicht. Hilft mir also nicht.
Jürgen
Registriert seit: 22.09.2024
Version(en): 2010
Tja, dann mußt du dir wohl einen anderen Workflow ausdenken oder deine C-DLL UNC fähig machen.
Registriert seit: 22.02.2025
Version(en): 365
Liebe Helfer, vielen Dank für eure Mühe. Hat aber alles leider nicht geklappt, in Excel scheint es dafür keinen einfachen Weg zu geben. Mal wieder alle Vorurteile über Microsoft bestätigt.
Ich habe jetzt aber eine andere Lösung gefunden. ursprünglich ging es ja darum, dass der OpenFileDialog eine URL zurück liefert, selbst wenn man einen lokalen Pfad auswählt. Ich habe jetzt eine kurze C-Routine geschrieben, die den gleichen Dialog aufruft. Dort wird aber wirklich das zurück geliefert, was man aussucht. D.h. der lokale Pfad mit Laufwerksbuchstaben, wenn man den auswählt. Die C-Routine habe ich in eine DLL gepackt und kann sie jetzt auch von Excel aus aufrufen. Damit ist das Problem für mich gelöst.
Jürgen
Registriert seit: 22.09.2024
Version(en): 2010
Zitat:... dass der OpenFileDialog eine URL zurück liefert
Was für eine OpenFiledialog soll das sein? Der Filedialog von Office lefert jedenfalls keine URL für lokale Dateien.
Registriert seit: 22.02.2025
Version(en): 365
27.02.2025, 16:35
(Dieser Beitrag wurde zuletzt bearbeitet: 27.02.2025, 16:36 von struct.)
Es geht um Daten auf einem Sharepoint, der aber auf einen Laufwerbuchstaben gemappt ist. dann liefert Application.GetOpenFilename eine URL, auch wenn ich über den Laufwerkbuchstaben auswähle.
Jürgen