Excel Visual Basic通过添加部分URL,将单元格更改为超链接

在列BI中有部分链接,如B003KIU14O

我想要实现的是将其转换为超链接并留在同一列B.

我的静态(链接的第一部分)链接是http://www.amazon.com/gp/product/

完整的链接如下所示: http : //www.amazon.com/gp/product/B003KIU14O

如果可能的话,我希望B列中的视觉值能显示B003KIU14O并有超链接

点亮你想转换的单元格并运行这个微小的macros:

Sub dural() Dim r As Range, s As String, DQ As String DQ = Chr(34) s = "http://www.amazon.com/gp/product/" For Each r In Selection v = r.Value r.Formula = "=HYPERLINK(" & DQ & s & v & DQ & "," & DQ & v & DQ & ")" Next r End Sub 

编辑#1

为了避免手动select:

 Sub dural() Dim r As Range, s As String, DQ As String DQ = Chr(34) Dim rBig As Range s = "http://www.amazon.com/gp/product/" Dim N As Long N = Cells(Rows.Count, "B").End(xlUp).Row Set rBig = Range("B1:B" & N) For Each r In rBig v = r.Value r.Formula = "=HYPERLINK(" & DQ & s & v & DQ & "," & DQ & v & DQ & ")" Next r End Sub 

如果您不介意在相邻单元格中出现超链接,我不认为您需要Visual Basic:将以下内容放在希望超链接出现的单元格中(假定您的链接出现在单元格B1 ):

 =HYPERLINK("http://www.amazon.com/gp/product/" & B1, B1) 

然后根据需要复制到列B中的其他值。

如果您想要显示完整的超链接,只需删除第二个参数:

 =HYPERLINK("http://www.amazon.com/gp/product/" & B1)