WebDAVフォルダをドライブ文字にマップすることです。実装の例を次に示します。
VBAで、次のActiveXライブラリへの参照を追加します。
- Windowsスクリプトホストオブジェクトモデル(
wshom.ocx
) - WshNetwork
- Microsoftスクリプトランタイム(
scrrun.dll
)については - FileSystemObjectオブジェクト
のために作成します。新しいクラスモジュールをDriveMapper
と呼び、次のコードを追加します。
Option Explicit
Private oMappedDrive As Scripting.Drive
Private oFSO As New Scripting.FileSystemObject
Private oNetwork As New WshNetwork
Private Sub Class_Terminate()
UnmapDrive
End Sub
Public Function MapDrive(NetworkPath As String) As Scripting.Folder
Dim DriveLetter As String, i As Integer
UnmapDrive
For i = Asc("Z") To Asc("A") Step -1
DriveLetter = Chr(i)
If Not oFSO.DriveExists(DriveLetter) Then
oNetwork.MapNetworkDrive DriveLetter & ":", NetworkPath
Set oMappedDrive = oFSO.GetDrive(DriveLetter)
Set MapDrive = oMappedDrive.RootFolder
Exit For
End If
Next i
End Function
Private Sub UnmapDrive()
If Not oMappedDrive Is Nothing Then
If oMappedDrive.IsReady Then
oNetwork.RemoveNetworkDrive oMappedDrive.DriveLetter & ":"
End If
Set oMappedDrive = Nothing
End If
End Sub
次に、あなたのコード内でそれを実装することができます。SharePointコンテンツを取得する共有ポイントへ
Sub test()
Dim dm As New DriveMapper
Dim sharepointFolder As Scripting.Folder
Set sharepointFolder = dm.MapDrive("http://your/sharepoint/path")
Debug.Print sharepointFolder.Path
End Sub
あなたは、Windowsエクスプローラを使用して、SharePointのフォルダに移動することができますか? – shahkalpesh
はい!これは、通常のネットワークフォルダのように見えます。 – tachfine