我希望能够创建一个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://
必须删除。