Excel单元格格式特殊情况

我有一个有趣的困境,想知道如果有人可能知道这是可能的。 我使用java创build一个.csv文件,每行的一个逗号分隔的条目是一个url。

例:

item1,item2,item3, http: //myurl.com

最初,当我在Excel中加载.csv文件时,它只加载了url的文本,并没有使其可点击。 我能够通过在创build文件时用这个string包围条目来解决这个问题:

= HYPERLINK(“ http://myurl.com ”)

当Excel加载时,链接是可点击的,鼠标指针变为手形图标。 唯一的问题是,当你只是看着它,而不是徘徊在单元格,它看起来像在白色背景上的黑色文字。 通常当你看到一个链接,它是蓝色的下划线标志着它是可点击的。 我想这个视觉队列,但我不知道是否有一种方法,只是通过修改我的function上面的某种单元格格式函数什么的。

是的,我知道条件格式是什么,以及如何将其应用于Excel中的单元格。 但是,这不适合我,因为我只是需要它加载文件时工作。 当用户下载文件时,文件始终是新build的,因为内容总是在变化。 任何想法将不胜感激。

通过双击.csv文件input的超链接是“冷”(不可点击)的原因在于,超出input文本的形成“热”超链接的UI部分已被绕过。 如果.csv具有原始URL而不是= HYPERLINK()函数,则可以通过运行以下命令使它们变热:

Sub HyperIgniter() Dim r As Range For Each r In ActiveSheet.UsedRange If Left(r.Text, 4) = "http" Then r.Select Application.SendKeys "{F2}" Application.SendKeys "{ENTER}" DoEvents End If Next r End Sub 

这相当于重新input每个超链接,从而使它们变得“热门”并给予它们通常的格式。

您可以使用jXLS库创build模板化的excel文件。 它真的很容易使用。 样品

这绝对是可以做到的,但可能比你想象的要复杂。

首先,您将不得不按照本文中的步骤创build一个新的自定义数字格式,您可以在所有新的工作簿中使用,客户也可以使用。

添加单元格格式选项到自定义列表

我会引用这个清单,但是我不想为汉斯的伟大解决scheme留下任何荣誉。

您要添加的选项将是“[蓝色]常规”

现在,你的CSV文件应该保存下面的例子:“text =”

所以,现在你正在应用新的格式(控制字体颜色)。 只需将google.comreplace为您的url。 您会注意到,有许多引用是棘手的格式化CSV力的产物,因此它会在需要的位置添加引号,并且不会将必需的逗号(对于TEXT函数)分成两个单元格。