Excel VBA:从超链接中的单元格插入文本



我是这里的新手,有一个非常简单的问题。我在Excel中有一些经度/经度数据,我想将其转换为Google地图街景超链接。我已经在这里查找了另一个线程,如何将超链接放在一起,但我正在努力弄清楚如何重复地将纬度/经度数据复制到网址的中间。

我已经将我的纬度/经度(十进制)连接到一个单元格中,作为

正确格式(即纬度,经度)的文本,该单元格位于 J 列中,并希望超链接位于 N 列中,应为:

http://maps.google.com/?cbll={lat,long from column J}&cbp=12,90,,0,5&layer=c

我尝试在这里查看其他一些线程,但无法完全解决,因为它们都是更复杂的示例。希望有人可以帮助我轻松解决此问题!谢谢:)

考虑:

Sub dural()
    Dim s1 As String, s2 As String, s3 As String, s4 As String
    s1 = "http://maps.google.com/?cbll={"
    s3 = "}&cbp=12,90,,0,5&layer=c"
    s2 = Range("J1").Text
    s4 = s1 & s2 & s3
    With ActiveSheet
        .Hyperlinks.Add Anchor:=Range("N1"), Address:=s4, TextToDisplay:=s2
    End With
End Sub

因此,如果 J1 包含:

51.507351.,-0.127758

N1 中的结果将是:

http://maps.google.com/?cbll={51.507351.,-0.127758}&cbp=12,90,,0,5&layer=c

编辑#1:

要运行此向下列 J,请使用以下版本:

Sub dural2()
    Dim s1 As String, s2 As String, s3 As String, s4 As String
    Dim N As Long, i As Long
    N = Cells(Rows.Count, "J").End(xlUp).Row
    s1 = "http://maps.google.com/?cbll={"
    s3 = "}&cbp=12,90,,0,5&layer=c"
    For i = 1 To N
        s2 = Range("J" & i).Text
        s4 = s1 & s2 & s3
        With ActiveSheet
            .Hyperlinks.Add Anchor:=Range("N" & i), Address:=s4, TextToDisplay:=s2
        End With
    Next i
End Sub

最新更新