Excel 2010 - 宏设置链接到特定列

Excel 2010 - 宏设置链接到特定列

我如何设置此宏以应用于所有 G 列中的 A 列:

这可行,但我想将其应用于 A 列中的所有活动行。这将获取 G 列中的超链接并将其应用于 A 列中完全相同的行。

Sub setlink()

Dim r1 As Range
Dim r2 As Range
Set r1 = Sheet2.Range("a2")
Set r2 = Sheet2.Range("G2")
Sheet2.Hyperlinks.Add r1, r2.Value

End Sub

答案1

我使用此代码找到了解决方案。我将数据放在 A 列和 B 列中,因此此代码使用 A 列中的显示文本和 B 列中的 URL 在 C 列中创建超链接。

Sub MakeHyperlinksUsingArray()
    Dim vArray As Variant
    Dim i As Long

    With Sheets("Backup")
        vArray = .Range("A2:B" & _
            .Cells(.Rows.Count, "A").End(xlUp).Row).Value

        For i = 1 To UBound(vArray, 1)
            .Hyperlinks.Add _
                Anchor:=.Cells(i + 1, "C"), _
                Address:=vArray(i, 2), _
                TextToDisplay:=vArray(i, 1)
        Next i
    End With 
End Sub

答案2

我会保持简单并仅复制该列。

Columns("G").Copy
Columns("A").Select
ActiveSheet.Paste

这将快速轻松地将 G 列复制到 A 列,包括超链接。

相关内容