【问题标题】:How to specify the current directory as path in VBA?如何将当前目录指定为 VBA 中的路径?
【发布时间】:2012-04-30 05:33:18
【问题描述】:

我有一个启用宏的工作簿。我需要将启用宏的文件所在的当前文件夹指定为路径。我试过设置

path = ActiveWorkbook.Path

path = CurDir()

但这些都不适合我。对此有什么想法吗?

【问题讨论】:

  • ActiveWorkbook.Path 是获取路径的正确方法。您如何以及在何处调用此代码?
  • Activeworkbook.path 不存在,直到文档被保存一次?
  • 如果是运行宏的文件,那么你需要 ThisWorkbook.Path
  • +1 蒂姆·威廉姆斯。是的 :) 因此了解他如何以及从哪里调用此代码很重要?
  • @Siddharth - 我在“当前文件夹中存在启用宏的文件”

标签: vba excel


【解决方案1】:

如果您想要的路径是运行宏的工作簿的路径,并且该工作簿已保存,那么

ThisWorkbook.Path

是你会使用的。

【讨论】:

    【解决方案2】:

    我以为我误解了,但我是对的。在这种情况下,它将是ActiveWorkbook.Path

    但主要问题不在这里。问题出在这两行代码

    strFile = Dir(strPath & "*.csv")
    

    应该写成

    strFile = Dir(strPath & "\*.csv")
    

    With .QueryTables.Add(Connection:="TEXT;" & strPath & strFile, _
    

    应该写成

    With .QueryTables.Add(Connection:="TEXT;" & strPath & "\" & strFile, _
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-12-25
      • 2020-06-02
      • 1970-01-01
      • 2019-02-18
      • 1970-01-01
      • 2011-02-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多