Excel可以将CSV中的URL解释为超链接吗?如果是这样,怎么办?
Answers:
您实际上可以执行此操作,并让Excel显示可单击的链接。在CSV文件中使用以下格式:
=HYPERLINK("URL")
因此,CSV看起来像:
1,23.4,=HYPERLINK("http://www.google.com")
但是,我正在尝试使其中带有逗号的某些链接正常工作,并且似乎没有一种方法可以使它们转义并且仍然让Excel使该链接可单击。
有人知道吗?
field1,"field2","field3,with ""commas"""
有效的CSV阅读器应将其解释为三个字段。使用现有的CSV读取器/写入器库来处理这些极端情况是个好主意。
嵌入超链接功能后,您需要注意报价。以下是创建的CSV文件的示例,其中列出了错误以及用于查看有关失败方法的文档的链接。(有点深奥,但这就是我正在努力的方向)
"Details","Failing Method (click to view)"
"Method failed","=HYPERLINK(""http://some_url_with_documentation"",""Method_name"")"
您可以在URL内对逗号进行编码,以使URL不会在多个单元格中分开。
只需用%2c替换逗号
http://www.xyz.com/file,comma.pdf
变成
= hyperlink(“ http://www.xyz.com/file%2ccomma.pdf”)
是的,但是无法自动链接它们。CSV文件只是文本文件-任何打开并阅读它们的行为都是允许您单击链接的原因。
关于Excel似乎如何处理CSV文件-逗号之间的所有内容都被解释为好像已经将其键入到单元格中一样。因此,包含的CSV文件="http://google.com",=A1
将http://google.com,http://google.com
在Excel中显示。需要特别注意的是,Excel中的超链接是元数据,而不是实际单元格中任何内容的结果(即,到Google的超链接单元格仍然http://google.com
不包含<a>http://google.com</a>
或此类内容。)
既然是这种情况,并且转换为CSV时所有元数据都会丢失,因此无法告诉Excel您希望仅通过更改单元格值来使某些内容超链接。通常,当您按“ Enter”键时,Excel会解释您的输入,然后链接URL,但是由于未输入CSV数据,而是已经存在CSV数据,因此不会发生这种情况。
最好的选择是编写某种插件或宏,以在打开CSV时运行,该CSV解析每个单元格并在它们与URL格式匹配时使它们超链接。
"=HYPERLINK(""http://www.google.com"")"
按照以下说明进行操作,只需要提供所有这些引号即可。
在写入CSV之前,“ = HYPERLINK(\“ \”“ +” http://www.mywebsite.com “ +” \“ \”)“使用此格式。
使用以下格式:
=HYPERLINK(""<URL>"";""<LABEL>"")
例如:
=HYPERLINK(""http://stackoverflow.com"";""I love stackoverflow!"")
PS在LibreOffice Calc中也可以使用相同的格式。