02.09.2020, 12:07
Moin zusammen,
ich hoffe ich mach kein neues Fass auf - aber laut Suche habe ich das so noch nicht gefunden :)
Und zwar möchte ich folgendes Makro nutzen und ergänzen:
Was es aktuell macht: es liest aus einem Pfad aus:
- Dateiname.
- File / Folder
- relativer Pfad
Ich frage mich nun, wie ich es ergänzen kann, damit in zwei weiteren Spalten zusätzlich ausgegeben werden:
- Dateiendung
- Absoluter Pfad
Makro:
Habt ihr da einen Tipp für mich?
Wäre euch sehr dankbar ...
Best Grüße!
// sorry für die Formatierung ... konnte keine URL einfügen zur Quelle
ich hoffe ich mach kein neues Fass auf - aber laut Suche habe ich das so noch nicht gefunden :)
Und zwar möchte ich folgendes Makro nutzen und ergänzen:
Was es aktuell macht: es liest aus einem Pfad aus:
- Dateiname.
- File / Folder
- relativer Pfad
Ich frage mich nun, wie ich es ergänzen kann, damit in zwei weiteren Spalten zusätzlich ausgegeben werden:
- Dateiendung
- Absoluter Pfad
Makro:
Code:
Sub DownloadListFromSharepoint()
Dim SharepointAddress As String
Dim LocalAddress As String
Dim objFolder As Object
Dim objNet As Object
Dim objFile As Object
Dim FS As Object
Dim rng As Range
SharepointAddress = "https://abc.onmicrosoft.com/TargetFolder/"
Set objNet = CreateObject("WScript.Network")
Set FS = CreateObject("Scripting.FileSystemObject")
objNet.MapNetworkDrive "A:", SharepointAddress
Set objFolder = FS.getfolder("A:")
Set rng = ThisWorkbook.Worksheets(1).Range("a1")
rng.Value = "File Name"
rng.Offset(0, 1).Value = "Folder/File"
rng.Offset(0, 2).Value = "Path"
GetAllFilesFolders rng, objFolder, "" & strSharepointAddress
objNet.RemoveNetworkDrive "A:"
Set objNet = Nothing
Set FS = Nothing
End Sub
Public Sub GetAllFilesFolders(rng As Range, ObjSubFolder As Object, strSharepointAddress As String)
Dim objFolder As Object
Dim objFile As Object
For Each objFile In ObjSubFolder.Files
rng.Offset(1, 0) = objFile.Name
rng.Offset(1, 1) = "File"
rng.Offset(1, 2) = Replace(objFile.Path, "A:\", SharepointAddress)
Set rng = rng.Offset(1, 0)
Next
For Each objFolder In ObjSubFolder.subfolders
rng.Offset(1, 0) = objFolder.Name
rng.Offset(1, 1) = "Folder"
rng.Offset(1, 2) = Replace(objFolder.Path, "A:\", SharepointAddress)
Set rng = rng.Offset(1, 0)
GetAllFilesFolders rng, objFolder, strSharepointAddress
Next
End Sub
Habt ihr da einen Tipp für mich?
Wäre euch sehr dankbar ...
Best Grüße!
// sorry für die Formatierung ... konnte keine URL einfügen zur Quelle