Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


6424 / 13644 ツリー ←次へ | 前へ→

【45282】ファイルサーバーの割り当て操作について FJ 06/12/18(月) 3:09 質問[未読]
【45286】Re:ファイルサーバーの割り当て操作について maverick 06/12/18(月) 10:36 回答[未読]
【45316】Re:ファイルサーバーの割り当て操作について FJ 06/12/19(火) 3:16 お礼[未読]

【45282】ファイルサーバーの割り当て操作について
質問  FJ  - 06/12/18(月) 3:09 -

引用なし
パスワード
   ファイルサーバーに特定の場合のみドライブの割り当てをしたり、切り離したり
出来ないでしょうか。

たとえば、ファイルサーバーA をMドライブにマウントして使いたい時
・今のMドライブ状況を確認する
・Mドライブのネットーワークドライブを切り離す
・Mドライブに、ファイルサーバーAを割り当てる
・Mドライブのファイルを使用する
・MドライブからファイルサーバーAを切り離す

という一連の作業をVBAで行いたいと考えています。

なんとか、うまい具合にネットワークドライブを制御する方法が
ないでしょうか。よろしくお願いします。

【45286】Re:ファイルサーバーの割り当て操作につ...
回答  maverick  - 06/12/18(月) 10:36 -

引用なし
パスワード
   Public Const drv As String = "M:"
Public Const pth As String = "\\ファイルサーバーA\Shared"
Public Const usr As String = "UserA"
Public Const pwd As String = "12345"

Sub 接続()
  Dim objNetwork As Object
  Dim colDrives As Object
  Dim i As Integer

  Set objNetwork = CreateObject("WScript.Network")
  Set colDrives = objNetwork.EnumNetworkDrives
  For i = 0 To colDrives.Count - 1 Step 2
    If colDrives.Item(i) = drv Then Exit Sub
  Next

  On Error GoTo er
  objNetwork.MapNetworkDrive drv, pth, False, usr, pwd

  Set objNetwork = Nothing
  Set colDrives = Nothing
  Exit Sub
er:
  MsgBox "接続失敗"
End Sub

Sub 切断()
  Dim objNetwork As Object
  Dim colDrives As Object
  Dim i As Integer

  On Error GoTo er
  Set objNetwork = CreateObject("WScript.Network")
  Set colDrives = objNetwork.EnumNetworkDrives
  For i = 0 To colDrives.Count - 1 Step 2
    If colDrives.Item(i) = drv Then
      objNetwork.RemoveNetworkDrive drv, True
    End If
  Next

  Set objNetwork = Nothing
  Set colDrives = Nothing
  Exit Sub
er:
  MsgBox "切断失敗"
End Sub

【45316】Re:ファイルサーバーの割り当て操作につ...
お礼  FJ  - 06/12/19(火) 3:16 -

引用なし
パスワード
   ▼maverick さん:

早速の回答、ありがとうございます。
教えてもらったロジックでドライブ操作を
正確にコントロールすることが出来ました!!

本当にありがとうございます。

6424 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free