簡體   English   中英

在 Excel VBA 中從單元格內容創建超鏈接

[英]Create hyperlink from cell contents in Excel VBA

我正在嘗試根據用戶選擇的單元格范圍中的單元格內容創建超鏈接。 然而,當它運行它時,我已經走到了這一步,它在循環中循環但不創建任何超鏈接。

Sub AcctHyperlink()
    Dim WorkRng As Range
    On Error Resume Next
    Set WorkRng = Application.Selection
    Set WorkRng = Application.InputBox("Range", "Select Range", WorkRng.Address, Type:=8)

    For i = WorkRng.Rows.Count To 1 Step -1
        If WorkRng.Cells(i, 1).Value <> "" Then

            WorkRng.Cells(i, 1).Hyperlink.Add Anchor:=WorkRng.Cells(i, 1), _
            Adress:="https://example.com/" & WorkRng.Cells(i, 1).Value & "/search", _
            TextToDisplay:=WorkRng.Cells(i, 1).Value

        End If
    Next
End Sub

編輯無非是兩個錯別字和缺少的CStr()調用! Hyperlink應該是HyperlinksAdress應該是Address 您的代碼編譯得很好,因為Range.Item返回的是Variant ,而不是Range ,因此 Excel 無法在編譯時標記此類錯誤。 以下適用於我的 Excel 2013 安裝:

Option Explicit    '<--- always use this for more robust code

Sub AcctHyperlink()
    Dim WorkRng As Range
    'On Error Resume Next  '<--- Omit for error checking
    Set WorkRng = Application.Selection
    Set WorkRng = Application.InputBox("Range", "Select Range", WorkRng.Address, Type:=8)

    Dim i as Long   '<--- Need this because of Option Explicit
    Dim addr as String  '<--- ditto
    For i = WorkRng.Rows.Count To 1 Step -1
        If WorkRng.Cells(i, 1).Value <> "" Then
            addr = "https://insight.metavante.org/opstopb1/OpstopServlet/Search?activityID=ViewProfileLnNote&activityType=note&activityTrgtID=undefined&activityAction=search&profileView=&accountNumber=" & CStr(WorkRng.Cells(i, 1).Value) & "&accountType=&subAccountNumber=&prcsGrpID=136&RelatedFIs=136&searchBy=account"
                ' Note: need CStr()
            '                            V--- "Hyperlinks"
            WorkRng.Cells(i, 1).Hyperlinks.Add Anchor:=WorkRng.Cells(i, 1), _
            Address:=addr, _
            TextToDisplay:=CStr(WorkRng.Cells(i, 1).Value)
            '^--- "Address" two lines up
            '              ^^^^---- Need CStr()
        End If
    Next
End Sub

你必須改變:

AdressAddressHyperlinkHyperlinks

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM