【问题标题】:Excel VBA + List all mapped network drives and network shortcuts/locationsExcel VBA + 列出所有映射的网络驱动器和网络快捷方式/位置
【发布时间】:2019-02-24 23:08:02
【问题描述】:

我正在打开时创建一个下拉列表,其中填充用户的映射网络驱动器(驱动器号)和任何网络位置(文件夹快捷方式)。基本上你会在我的电脑/这台电脑的网络位置部分看到。

使用 VBA 我知道您可以使用文件脚本对象筛选映射的驱动器,但我一直未能成功获取网络位置。

尝试使用 Object.enumNetworkDrives 的 Wscript.Network 对象似乎在工作中工作正常,但在家远程工作时似乎并没有引入网络位置。

是否有不同的、更好的和/或更一致的方法(有一个很好的 VBA 示例)来使用 VBA 获取所有映射的驱动器和网络位置?

【问题讨论】:

  • 您知道我已经看到了该链接,但忽略了逻辑中的微小细节,该逻辑实际上提取了存储所有网络位置的路径。使用其中的前几行,遍历子文件夹以获取网络位置名称并应用一些 WMI 逻辑可以解决我需要做的所有事情!非常感谢!

标签: excel vba shortcut drive


【解决方案1】:

我建议你看看 WMI。下面是一个简短的示例,可以帮助您入门:

Sub ListDrives()
    WQL = "Select * From Win32_LogicalDisk"
    Set SrvEx = GetObject("winmgmts:root/CIMV2")
    Set WMIObj = SrvEx.ExecQuery(WQL)
    For Each WMIObjEx In WMIObj
        Debug.Print WMIObjEx.Path_.RelPath
    Next
End Sub

【讨论】:

  • 啊,太酷了!它是 SQL 的事实使我更容易使用它。这可能是远程工作与办公室之间的网络配置,因为我只看到我的映射驱动器 + C 并且没有网络位置快捷方式。这是一个超级酷的逻辑,我需要更习惯使用它。感谢您的快速回复和示例!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多