excel - 如何使用 `Environ("USERPROFILE")` 在桌面上打开工作簿,而桌面位置更改为另一个驱动器 (D)?

标签 excel vba windows

在我的工作 PC 上,我没有在系统驱动器 (c) 上写入。
所以,我使用了properties桌面文件夹并将其位置更改为另一个驱动器 (d)。
从 Windows 10 开始,我在该驱动器 (d) 上使用我的桌面,就像在驱动器 (c) 上一样。
问题 :我试过这个 vba 代码在我的桌面上打开工作簿

Dim wb1 As Workbook: Set wb1 = Workbooks.Open(Environ("USERPROFILE") & "\Desktop\Query1.xls")
,但我得到了这个错误Run-time error 1004:Sorry, we couldn't find C:\Users\Waleed\Desktop\Query1.xls. Is it possible it was moved, renamed or deleted?我在问这个问题,因为我在工作电脑和笔记本电脑上交替使用 excel 文件(无限制)
每次更换机器时都很难更改我的 vba 代码。
一如既往,感谢您的帮助。

最佳答案

使用 vbscript SpecialFolders .

   Set objShell = Wscript.CreateObject("Wscript.Shell")
   strPath = objShell.SpecialFolders("Desktop")
查看完整列表 here .
Function Desktop() As String
'returns the path to Desktop 
    Desktop = CreateObject("wscript.shell").specialfolders("desktop")
End Function

关于excel - 如何使用 `Environ("USERPROFILE")` 在桌面上打开工作簿,而桌面位置更改为另一个驱动器 (D)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71098670/

相关文章:

EXCEL VBA - 基于单元格范围和字符串创建动态下拉列表

c# - 获取数据后关闭EXCEL应用程序进程

python - 使用 pandas 创建平均数据框

excel - 使用空输入单击确定后 application.inputbox 错误

html - 如何提取向下滚动时进一步加载的完整表格?

python - 复制和合并不包括某些扩展名的目录

c++ - 接收整个 UDP 数据包

excel - VBA 半正弦公式

vba - 如何访问过滤列表内的范围以检索值?编程语言

python - 启动器中的 fatal error : Unable to create process using '"' in python