簡體   English   中英

用VBA更改Excel超鏈接中的通配符

[英]changing a wildcard in an excel hyperlink with vba

我想要一些有關在Excel超鏈接中刪除/替換通配符的幫助。 從邏輯上講,這似乎很容易,但是這超出了我的能力范圍。

我有一個帶有指向PDF文檔超鏈接的電子表格。 超鏈接包含“#”字符,該文件將停止工作。 在超鏈接中,我只需要將“#”更改為“%23”,該鏈接就可以使用。 由於鏈接數量眾多,我不想手動執行此操作。 有什么辦法可以通過VBA實現這一目標。 更改文件路徑似乎很容易,但是搜索超鏈接和更改#似乎是不可能的。

所有超鏈接都在A列中。

Excel將#左側的文本視為.Address ,將右側的.SubAddress視為.SubAddress因為它建議使用錨點類型鏈接。 您需要像這樣在每個鏈接上修復此問題:

For Each lk In Sheets("YourSheetName").Range("A:A").Hyperlinks
    If lk.SubAddress <> "" Then
        lk.Address = lk.Address & "%23" & lk.SubAddress
        lk.SubAddress = ""
    End If
Next

暫無
暫無

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

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