2010-04-07 71 views

回答

237

如果您不想製作一個宏,並且只要您不介意添加一列,那麼只需在您的URL列旁邊創建一個新列。

在公式=HYPERLINK(A1)(用您感興趣的任何單元格替換A1)中的新列類型中。然後將配方複製到200個條目的其餘部分。

注意:如果單元格A1包含長度超過255個字符的字符串,此解決方案不起作用。它導致#VALUE!錯誤

+2

如果我的A列中包含200個鏈接值,是有可能寫出一個公式,其超鏈接的200個值,並把它改寫在A列中,而不是創建一個新的列? – developer 2010-04-07 20:50:41

+2

謝謝!這在30,000個單元上運行良好。 – 2012-12-07 20:26:12

+13

如果URL長度超過255個字符,則這不起作用。 – Nathan 2014-01-07 18:28:55

14

好的,這是一個hokey解決方案,但我無法弄清楚如何讓Excel評估一列URL作爲批量超鏈接。

  1. 創建一個公式,="=hyperlink(""" & A1 & """)"
  2. 向下拖動
  3. 複製新的公式欄
  4. 粘貼特殊值,只比原先列
  5. 高亮列,單擊按Ctrl - ^h(替換),找到並替換==(以某種方式強制重新評估細胞)。
  6. 單元現在應該可以點擊作爲超鏈接。如果您想要藍色/下劃線樣式,那麼只需突出顯示所有單元格並選擇超鏈接樣式。

單獨的超鏈接樣式不會轉換爲可單擊的鏈接,並且「插入超鏈接」對話框似乎無法將文本用作批量單元格羣組的地址。除此之外,F2通過所有單元格輸入會執行此操作,但對於很多單元格來說這是單調乏味的。

+3

只是=(HYPERLINK(間接(地址(行(),列()+ 1)),「着裝」和行())更容易 – 2013-03-18 13:56:54

+0

這應該是公認的答案! – Ma3x 2017-10-11 14:58:09

20

這是我找到的一種方法。我在使用Excel 2011的Mac上。 如果B列有文本值要超鏈接,請將此公式放入單元格C1(或D1或任何只要它是空列的地方):=HYPERLINK(B1,B1) 這將插入作爲鏈接文本的位置的超鏈接和作爲鏈接文本的「友好名稱」。如果你有另一個列有每個鏈接的友好名稱,你也可以使用它。 然後,如果你不想看到它,你可以隱藏文本列。

如果你對某件事有ID的列表,和網址都http://website.com/folder/ID,如:

A1 | B1 
101 | http://website.com/folder/101 
102 | http://website.com/folder/102 
103 | http://website.com/folder/103 
104 | http://website.com/folder/104 

你可以使用類似=HYPERLINK("http://website.com/folder/"&A1,A1),你不會需要的URL列表。這是我的情況,並很好地工作。

根據這篇文章:http://excelhints.com/2007/06/12/hyperlink-formula-in-excel/這種方法也可以在Excel 2007中工作。

+0

適用於Windows,Excel 2013,是另一列的理想選擇。 – mdisibio 2017-04-10 20:44:49

+0

僅供參考,開放式辦公室上面給出了一個錯誤,但它似乎= HYPERLINK(C1)的作品,如果只給出一個參數 – tonypdmtr 2017-05-22 12:08:18

-5

有一個非常簡單的方法來做到這一點。創建一個超鏈接,然後使用「格式刷」複製格式。它會爲每個項目創建一個超鏈接。

+1

我不明白它的工作。你能詳細說明嗎? – 2012-10-06 14:41:14

+8

這不起作用,它只是複製格式,使它們看起來像超鏈接。 – reergymerej 2013-02-02 00:56:18

67

創建宏如下:

在Microsoft Excel中,指向宏工具菜單,然後單擊Visual Basic編輯器。 在插入菜單上,單擊模塊。 將此代碼複製並粘貼到模塊的代碼窗口中。 它會自動命名HyperAdd。

Sub HyperAdd() 

    'Converts each text hyperlink selected into a working hyperlink 

    For Each xCell In Selection 
     ActiveSheet.Hyperlinks.Add Anchor:=xCell, Address:=xCell.Formula 
    Next xCell 

End Sub 

當您完成粘貼宏時,單擊關閉並返回到Microsoft Excel在文件菜單上。

然後選擇所需的單元格,然後單擊宏並單擊運行。

備註不要選擇整列!只選擇您希望更改爲可單擊鏈接的單元格,否則您將以無休止的循環結束,並且必須重新啓動Excel! 完成!

+0

工作得非常出色。非常感謝。 – Bharathi 2014-06-06 13:03:23

+0

如果您使用顯式選項,請將Dim xCell添加爲範圍。對於改變單元格的解決方案+1(如問題所述)並提供執行此操作的代碼。 – Praesagus 2014-12-22 23:52:27

+0

這對我來說很好,因爲我在一個需要更新的電子表格中有大約5萬個鏈接,並且必須以塊或Excel的形式進行更新才能崩潰。 – ssaviers 2015-06-15 22:06:02

6

此方法我使用超鏈接功能:

=HYPERLINK("http://"&B10,B10) 

哪裏B10是包含URL的文本版本(在這個例子中)的細胞。

+0

= HYPERLINK(「http://」&B10,B10)沒有在我的Excel 2013中工作,但是 = HYPERLINK(「http://」&B10)DID工作。 – agibsen 2013-05-08 09:18:26

4

使用Windows 2007上的Excel 2007,我發現這些步驟最簡單;

  1. 與非現用URL選擇單元格
  2. 複印
  3. 粘貼爲超級鏈接
+1

在後來的版本中(我使用的是Office 2011),這不起作用 - 我只是獲得超鏈接到桌面文件(這一個),而不是單元格中顯示的URL。例如file:// localhost/Users/xxxx/Desktop/Blahblahblah File Name.xlsx - Sheet1!A2 – Dannid 2014-01-30 20:27:51

1

可以插入式=HYPERLINK(<your_cell>,<your_cell>)到相鄰小區和拖動它沿着一路底部。這會給你一個所有鏈接的專欄。現在,您可以通過單擊標題來選擇原始列,然後單擊鼠標右鍵,然後選擇Hide

-3

Excel 2010中最簡單的方法: 選擇包含URL文本的列,然後從主頁選項卡中選擇超鏈接樣式。 該列中的所有網址現在都是超鏈接。

也雙擊URL文本末尾的每個單元格,並添加一個空白或只是輸入也會產生一個超鏈接。類似於您必須在MS Outlook電子郵件中創建URL鏈接的方式。

+4

它們不是超鏈接,它們看起來像超鏈接。這只是造型。 – Erica 2015-03-06 12:58:17

15

對於相當短名單相當簡單的方法:

  1. 在其中的URL是
  2. 箱雙擊輸入

你有你的鏈接;)

+9

我使用F2來編輯一個單元格,然後重複輸入,以快速運行我的列表。簡單。謝謝! – 2014-02-11 17:50:57

+1

這加上關於F2的評論讓我在一分鐘左右的160個超鏈接列。所以是的,如果專欄足夠短,這就是要走的路。 – 2016-10-21 16:27:38

+0

優秀的解決方案! – 2016-11-13 06:12:50

0

如果複製文本內容放入一個新列及用途:

=HYPERLINK("http://"&B10,B10) 

在您的原始專欄上。然後使用$爲列,因此它看起來像這樣:

=HYPERLINK("http://"&$B10,$B10) 

這只是它爲我工作在Excel 2010中在Windows 7上的方式,你可以複製下來的配方。

-1
這裏

最簡單的方法

  • 突出顯示整列
  • 點擊 '' 插入 ''
  • 點擊 '' 超鏈接 ''
  • 點擊 '' 本文檔中的地方 ''
  • 點擊確定
  • 那就是全部
+0

這不起作用,除非鏈接是在文檔中的內容。 – Erica 2015-03-06 12:56:12

+0

我的確同意這個問題措辭不佳,但預期的目標顯然是文本本身。 – 2015-03-12 16:26:28

2

試試這個:

= HYPERLINK( 「電子郵件地址:」 & A1,A1)

與您的電子郵件地址單元的文本替換A1。

1

我發現如果超鏈接不包含http中沒有一個方法在這裏工作://,因爲他們與當地的位置。

我也想防呆腳本的用戶將不能夠保持它自己,我也不會用。

它只能在選定的單元格區域運行,如果它們含有點和沒有空格。它只能運行多達10,000個單元。

Sub HyperAdd() 
Dim CellsWithSpaces As String 
    'Converts each text hyperlink selected into a working hyperlink 
    Application.ScreenUpdating = False 
    Dim NotPresent As Integer 
    NotPresent = 0 

    For Each xCell In Selection 
     xCell.Formula = Trim(xCell.Formula) 
     If xCell.Formula = "" Or InStr(xCell.Formula, ".") = NotPresent Then 
     'Do nothing if the cell is blank or contains no dots 
     Else 
      If InStr(xCell.Formula, " ") <> 0 Then 
       CellsWithSpaces = CellsWithSpaces & ", " & Replace(xCell.Address, "$", "") 
       GoTo Nextxcell 
      End If 

      If InStr(xCell.Formula, "http") <> 0 Then 
       Hyperstring = Trim(xCell.Formula) 
      Else 
       Hyperstring = "http://" & Trim(xCell.Formula) 
      End If 

      ActiveSheet.Hyperlinks.Add Anchor:=xCell, Address:=Hyperstring 

     End If 
     i = i + 1 
     If i = 10000 Then Exit Sub 
Nextxcell: 
     Next xCell 
    If Not CellsWithSpaces = "" Then 
     MsgBox ("Please remove spaces from the following cells:" & CellsWithSpaces) 
    End If 
Application.ScreenUpdating = True 
End Sub 
0

將URL放入HTML表格中,將HTML頁面加載到瀏覽器中,複製該頁面的內容,粘貼到Excel中。在這一點上,URL被保存爲活動鏈接。

解決方案,提出了在http://answers.microsoft.com/en-us/mac/forum/macoffice2008-macexcel/how-to-copy-and-paste-to-mac-excel-2008-a-list-of/c5fa2890-acf5-461d-adb5-32480855e11e由(吉姆·戈登的Mac MVP)http://answers.microsoft.com/en-us/profile/75a2b744-a259-49bb-8eb1-7db61dae9e78]

我發現,它的工作。

我有以下網址:

https://twitter.com/keeseter/status/578350771235872768/photo/1 https://instagram.com/p/ys5ASPCDEV/ https://igcdn-photos-g-a.akamaihd.net/hphotos-ak-xfa1/t51.2885-15/10881854_329617847240910_1814142151_n.jpg https://twitter.com/ranadotson/status/539485028712189952/photo/1 https://instagram.com/p/0OgdvyxMhW/ https://instagram.com/p/1nynTiiLSb/

我把它們放到一個HTML文件(links.html)是這樣的:

<table> 
<tr><td><a href="https://twitter.com/keeseter/status/578350771235872768/photo/1">https://twitter.com/keeseter/status/578350771235872768/photo/1</a></td></tr> 
<tr><td><a href="https://instagram.com/p/ys5ASPCDEV/">https://instagram.com/p/ys5ASPCDEV/</a></td></tr> 
<tr><td><a href="https://igcdn-photos-g-a.akamaihd.net/hphotos-ak-xfa1/t51.2885-15/10881854_329617847240910_1814142151_n.jpg">https://igcdn-photos-g-a.akamaihd.net/hphotos-ak-xfa1/t51.2885-15/10881854_329617847240910_1814142151_n.jpg</a></td></tr> 
<tr><td><a href="https://twitter.com/ranadotson/status/539485028712189952/photo/1">https://twitter.com/ranadotson/status/539485028712189952/photo/1</a></td></tr> 
<tr><td><a href="https://instagram.com/p/0OgdvyxMhW/">https://instagram.com/p/0OgdvyxMhW/</a></td></tr> 
</table> 

然後,我將links.html加載到瀏覽器中,複製並粘貼到Excel中,並且鏈接處於活動狀態。

2

對我來說,我只是複製其在文本格式轉換成另一種應用程序的URL整列(說的Evernote),當他們被粘貼有他們成爲鏈接,然後我只是複製他們回來到Excel中。

這裏唯一的一點是,你需要確保你複製回線與列的其餘部分的數據。

1

謝謝Cassiopeia代碼。我改變他的代碼來使用本地地址,並且對他的條件做了些許改變。我除去以下條件:

  1. 變化http:/file:///
  2. 除去了所有類型的白色空間條件
  3. 改變10k的單元格範圍的條件爲100K

Sub HyperAddForLocalLinks() 
Dim CellsWithSpaces As String 
    'Converts each text hyperlink selected into a working hyperlink 
    Application.ScreenUpdating = False 
    Dim NotPresent As Integer 
    NotPresent = 0 

    For Each xCell In Selection 
     xCell.Formula = Trim(xCell.Formula) 
      If InStr(xCell.Formula, "file:///") <> 0 Then 
       Hyperstring = Trim(xCell.Formula) 
      Else 
       Hyperstring = "file:///" & Trim(xCell.Formula) 
      End If 

      ActiveSheet.Hyperlinks.Add Anchor:=xCell, Address:=Hyperstring 

     i = i + 1 
     If i = 100000 Then Exit Sub 
Nextxcell: 
     Next xCell 
    Application.ScreenUpdating = True 
End Sub 
+0

完美工作,我在幾秒鐘內製作了〜7000超鏈接。 :)謝謝仙后座。 – Junaid 2016-11-23 07:20:17

1

如果adding an extra column with the hyperlinks是不是一個選項,如果你已經安裝了notepad ++,你可以:

  • 複製地址到記事本++
  • 保持ALT列 - SHIFT壓,從左上角到右下角擴展你的光標,並鍵入=hyperlink("。這在每個條目的開頭增加了=hyperlink("
  • 打開 「替換」 菜單(Ctrl鍵 - ħ),激活的正則表達式(ALT - ģ),並與替換"\)$(行尾)。這會在每行的末尾添加一個封閉引號和一個閉括號(在正則表達式激活時需要跳過\)。
  • 在Excel中粘貼數據。在實踐中,只需複製數據,然後選擇希望數據結束的列的第一個單元格。
3

對於任何使用Excel 2016登陸這裏,你可以簡單地突出欄,然後單擊Hyperlink標籤位於在Styles框中Home色帶。

enter image description here

+1

這隻會給單元格樣式,而不會使URL可點擊。 – stenlytw 2018-02-14 12:41:17

相關問題