VBA:将列中的填充单元格转换为超链接

时间:2016-01-29 19:52:31

标签: excel vba excel-vba hyperlink

我有一个SQL脚本作为Excel中的数据连接,基本上返回3列。这3列都是超链接的文本。这3列可以包含空值/空单元格。

我发现要运行的VBA脚本会将这些超链接文本转换为实际的超链接(如您可以单击该单元格,它将带您进入该网页)。

我的问题是: VBA脚本也将空/空单元格转换为超链接(当然无处可去,即单击单元格而它什么都不做)。

我的问题是:如何编辑此脚本以仅将非空/填充的单元格转换为超链接?

到目前为止

脚本:

Sub HyperlinkConverter()
For Each xCell In Range("M:O")
    ActiveSheet.Hyperlinks.Add Anchor:=xCell, Address:=xCell.Formula
Next xCell
End Sub

伪脚本:

Sub HyperlinkConverter()
For Each xCell In Range("M:O") **WHERE RANGE("M:O") IS NOT NULL (or) RANGE("M:O") <> ""**
    ActiveSheet.Hyperlinks.Add Anchor:=xCell, Address:=xCell.Formula
Next xCell
End Sub

1 个答案:

答案 0 :(得分:1)

只测试每个细胞:

a:5:{i:0;s:199:"Error in file: "app/code/core/Mage/Customer/sql/
customer_setup/mysql4-upgrade-1.4.0.0.7-1.4.0.0.8.php" - SQLSTATE[HY000]:
General error: 1215 Cannot add foreign key constraint";i:1;s:970:"
#0 app/code/core/Mage/Core/Model/Resource/Setup.php(644): Mage::exception('Mage_Core', 'Error in file: ...')

修改#1:

要避开第一行:

Sub HyperlinkConverter()
   For Each xCell In Range("M:O")
      If xCell.Value <> "" Then
         ActiveSheet.Hyperlinks.Add Anchor:=xCell, Address:=xCell.Formula
      End If
   Next xCell
End Sub