有没有办法在 Access 的 .mdb 文件中将一列文件名转换为指向该文件的链接?

Posted

技术标签:

【中文标题】有没有办法在 Access 的 .mdb 文件中将一列文件名转换为指向该文件的链接?【英文标题】:Is There a Way to Turn a Column of File Names Into Link to That File in a .mdb File in Access? 【发布时间】:2021-06-09 17:25:09 【问题描述】:

我有一个带有一列文件名的 Access 文件,例如:

Column Name
cat.pdf
dog.pdf
happy.pdf
candy.pdf

访问文件位于名为“example”的文件夹中 示例中有一个名为“image”的文件夹

访问文件中引用的所有pdf都在image文件夹中。

所以

    .
    |--example
         |----image
         |      |---cat.pdf
         |      |---dog.pdf
         |      |---happy.pdf
         |      └---candy.pdf
         └----cdrom.mdb

我相信这就像在包含这些文件名的整个列前面加上“图像”一样简单,但我找不到有效的方法来做到这一点。 我知道如何手动超链接每个文件名,但我有数百个需要转换为“图像”文件夹中的文件的工作超链接。

【问题讨论】:

【参考方案1】:

在 Access 中,可点击的超链接由 3 个部分组成,以 # 字符分隔。

如果你想要一个表单上的可点击链接,在文本框 ControlSource 中计算:

="#" & CurrentProject.Path & "\image\" & [fieldname] & "#"

将文本框 IsHyperlink 属性设置为 Yes。

链接在 ReportView 中的报告上是可点击的,而不是在 PrintPreview 中。将报告导出为 PDF 应保留 PDF 中的可点击链接。

如果你想在表格中点击超链接,表格必须有一个定义为超链接类型的字段。 UPDATE 操作 SQL 可以填充该字段。UPDATE table SET [hyperlink field name]="#" & CurrentProject.Path & "\Image\" & [filename field] & "#"

对于其他图像类型(png、jpg、bmp),可以在图像控件中使用不带 # 个字符的计算来显示在表单或报表上。

【讨论】:

我不想把它变成表格。 然后选项是使用计算值更新表中的超链接类型字段。 如果回答解决了问题,请标记为接受。【参考方案2】:

这些文件的路径应该是:

PdfPath = CurrentProject.Path & "\image\" & [Column Name]

【讨论】:

我是 Access 新手,我应该在哪里输入这个? 那是VBA设置一个变量。然后使用构造的路径和FollowHyperlink函数打开文件。 对不起……我还是不明白。我如何使用它来设置变量,或者如何使用构造路径..或 FollowHyperlink 函数。我是最终用户计算支持,这是为从事物流工作的人准备的。我真的对 Access 一无所知。 那么您对自己的时间非常慷慨。根据我的经验,IT 拒绝协助未在“支持”列表中获得批准的产品。他们安装了 Access,但后来我们自己弄清楚如何使用。零帮助学习和编程。 啊,明白了。是的,我确实了解编程概念。我只是不知道如何导航 MS-Access。它在这里不是很广泛使用,只有一个做进口的人。我不想把 .mdb 变成一个表格。我希望能够直接单击 Access 中的单元格。我从未使用过宏、过程或对 Access 做过任何事情。用户从 UPS 获得的 .mdb 文件曾经有有效的超链接,他们就此事联系了 UPS 支持,而从事这些工作的人离开了 UPS。

以上是关于有没有办法在 Access 的 .mdb 文件中将一列文件名转换为指向该文件的链接?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 MS Access 2010 中将 ACCDB 转换为 MDB

用access打开*.mdb数据库时,提示没有权限,让管理员设置适当的权限,有高手吗,我在线等

有没有办法用 C++ 查询 .accdb/.mdb 文件?

Delphi:在没有 Ms Access 的情况下创建 Access DB (.mdb)

我们如何在 C# 中将访问数据库(.mdb)导入 sql server 2008

在 Python 中将 .mdb 文件转换为 .csv 时包括列名