【问题标题】:VBA to open MyComputer at a specific folderVBA 在特定文件夹中打开 MyComputer
【发布时间】:2011-04-06 20:38:48
【问题描述】:

我刚刚继承了一个 MS Access 2003 系统,需要一些 VBA 来放置一个命令按钮,以便在特定文件夹中打开 MyComputer 以查看那里的文件。 文件夹名称将来自表单上的字段。 我确实有

Application.FollowHyperLink "C:\" & Me![ref] (ref 格式为 abcd-1234)

当它的硬编码时它工作正常,但我似乎无法从表单中选择文件夹名称时打开它。

有什么提示吗? (除了分箱访问!) 谢谢

【问题讨论】:

    标签: ms-access vba


    【解决方案1】:

    这段代码总是对我有用:

    Dim filePath = <"Insert the path of the directory to open inside of opening and closing parenthesis">
    
    Application.FollowHyperlink filePath, vbNormalFocus
    

    通常,我将几个目录存储在 DBMS 内的一个表中,这有助于将数百个图像链接到数据库而不是嵌入。例如,我有一个名为“dbLocations”的表。在这个表中,只有两个字段:1) picLocation 2) 描述。

    字段 picLocation 具有网络路径的值,即 C:\My Documents 或 G:\Whatever Directory 或 \\groups1\for UNC 路径。

    描述字段是它所暗示的,对 picLocation 的描述。

    我使用表来存储目录位置,因为它们链接到存储在网络驱动器上的文件(.jpg、.png)。随着时间的推移,目录可能会发生变化(我将文件夹移动到另一个位置,或者如果 UNC 发生变化等)。

    如果您在多个子或模块上硬编码位置,则需要更改每一个;这是非常低效的。因此,为了节省时间和很多麻烦,我使用域查找功能,它允许我只更改一次文件位置并且在一个容易找到的地方,即 dbLocations 表。

    本质上,我正在查找表中 picLocation 与 Alert Pics 的描述相匹配的位置的值。 (我正在创建一个数据库,用于跟踪侵入者和其他流浪者的工作)

    Dim filePath as String
    
    filePath = DLookup("picLocation", "dbLocations", "[Description] = 'Alert Pics'")
    Application.FollowHyperlink filePath, vbNormalFocus    
    

    通过这三行简单的代码,您可以导航到特定目录。

    【讨论】:

      【解决方案2】:

      在将文本提交到 FollowHyperlink 时查看文本的外观。您可以在代码中插入这样的一行:

      MsgBox "C:\" & Me![ref]
      

      也许这不是你所期望的。检查总是好的。

      当它不起作用时会发生什么。您是否看到任何可以帮助我们解决此问题的错误消息或任何其他症状?

      我的第一个想法是文件夹名称中的空格可能会产生问题。但我认为这不是答案,因为在此示例中,FollowHyperlink 对我来说效果很好:

      Application.FollowHyperlink "C:\Access\spaces in name\"
      

      所以我能提供的最好的方法是查看您要求 FollowHyperlink 使用什么。如果这种努力没有让您找到答案,请添加一个无法解决您的问题的具体示例。

      【讨论】:

      • 我的第一个猜测是参数需要用引号括起来,例如 Chr(34) & "C:\" & Me![ref] & Chr(34)。
      猜你喜欢
      • 2019-01-31
      • 2013-05-06
      • 1970-01-01
      • 1970-01-01
      • 2019-01-17
      • 2020-01-14
      • 2015-08-12
      • 2021-12-03
      • 1970-01-01
      相关资源
      最近更新 更多