如何以跨平台的方式创建指向本地文件的相对超链接?



我希望能够创建一个XLSX文件,其中包含指向同一目录或子目录中的文件的链接能够在不同的平台(macOS, Linux, Windows)和不同的电子表格程序(Excel, LibreOffice, Apple Numbers)上打开它们。

Apple Numbers根本不支持本地HYPERLINK

以下公式适用于macOS, Linux和Windows以及LibreOffice和Excel:

=HYPERLINK(
SUBSTITUTE(
LEFT(
SUBSTITUTE(CELL("filename"), "", "/"),
FIND(
"?",
SUBSTITUTE(
SUBSTITUTE(CELL("filename"), "", "/"),
"/",
"?",
LEN(SUBSTITUTE(CELL("filename"), "", "/"))
- LEN(
SUBSTITUTE(
SUBSTITUTE(CELL("filename"), "", "/"),
"/",
""
)
)
)
)
) & "{{ filename }}",
"'file://",
""
),
"{{ filename }}"
)

{{ filename }}替换为要打开的文件。

解释:

  • 将所有替换为/以确保在Windows上的正确计算
  • CELL("filename")获取当前电子表格文件的路径,但在Excel和LibreOffice中略有不同。因此,LibreOffice特定的'file://必须删除。

最新更新