在 Excel 中,我有一列連結顯示文字而不是實際連結。
我實際上需要鏈接,有沒有辦法批量轉換整個列以便公開鏈接?否則,我將不得不單擊每個鏈接,在瀏覽器中打開它,然後複製並貼上地址......
另外,我使用的是 Excel 2008 for Mac,所以看起來我無法執行巨集...
答案1
簡短回答:如果沒有 VBA,你就無法自動化此操作。
手動的
這是在 Windows 7 電腦上;只需將快捷方式替換為對應的 Mac 對應快捷方式即可。
- 反白顯示帶有超連結的儲存格。
- 按CTRL+ K。這將開啟超連結對話框(見下圖)。開啟後,您會發現遊標已位於「位址」欄位中。
- 按CTRL+A突出顯示整個 URL。
- 按CTRL+C進行複製。
- 按ESC或Enter關閉超連結對話框。
- CTRL透過+將 URL 貼到某處V。
程式設計語言
這裡為那些可以使用它的人提供了一個 VBA 解決方案。
使用以下程式碼建立 VBA 模組:
Public Function GetURL(c As Range) As String
On Error Resume Next
GetURL = c.Hyperlinks(1).Address
End Function
若要使用,請在任何儲存格中輸入以下內容:
=GetURL(A1)
其中 A1 包含超連結。
工作中的功能:
答案2
這聽起來像是一種蠻力方法,但這是我想出的最好方法。 (一小時前我自己也有同樣的問題時,我發現了這個頁面......你可以花一整天的時間尋找,但有時這樣做更容易並完成它。)
1) 僅將包含超連結的儲存格複製並貼上到新電子表格。
2) 匯出電子表格,點擊“更改文件類型”,選擇“另存為其他文件類型”並將其另存為網頁(也稱為 HTML 文件)。
3)在瀏覽器中開啟網頁並查看原始程式碼。
4) 將原始程式碼複製並貼上到文字編輯器中。
5) 使用文字編輯器的尋找/取代功能,刪除每個超連結的前導和尾隨文字。 (換句話說,將所述文字替換為空:「」)請注意,每個超連結的該文字應該相同。
6) 現在您應該有一個文字文件,其中只有超連結。根據需要複製並貼上回原始電子表格或按照您的意願使用。
編輯後表明您實際上可以匯出到單獨的文件,即 HTM。關閉該檔案並再次在 Excel 中重新開啟該檔案即可解決問題。 =Hyperlink 公式消失了,連結轉換為常規連結。這種方法節省了我的時間,而且非常簡單,我不需要處理腳本、公式、VBA 或巨集。
答案3
我使用 Mac,這對我有用:突出顯示您需要轉換的列,在「插入」功能表上開啟「超連結」。刪除顯示框中出現的任何文字。如果儲存格之間的顯示文字不同,它會顯示「[選擇了多個儲存格]」。按一下「確定」後,工作表上將僅顯示連結。如果您需要轉換單一儲存格而不是整個列,請反白顯示需要轉換的所有儲存格,右鍵單擊,選擇“編輯超連結”,然後按照相同的步驟刪除「顯示」方塊中的文字。
答案4
自從 Excel 提出這個問題以來,我公司的某人將此=GetURL(cell)
函數添加到我們的全域 XLAM 檔案中,我認為它是基礎 Excel 的一部分。這是 VBA...
Public Function GetURL(cell As Range, Optional default_value As Variant) As Variant
Dim output As Variant
If (cell.Range("A1").Hyperlinks.Count <> 1) Then
output = default_value
Else
output = cell.Range("A1").Hyperlinks(1).Address
End If
GetURL = output
End Function