Johnには、1000をはるかに超えるURLがすべて列Aにあるワークブックがあります。これらはハイパーリンクではありません。それらは個々のURLのストレートテキストです。 Johnは、URLをアクティブなハイパーリンクに変換したいと考えていますが、特にその数のURLの場合、個別に変換を行うのは非常に面倒です。

変換を行う1つの方法は、HYPERLINK関数を使用することです。この数式をセルB1に入力し、必要な数のセルにコピーします。

=IF(A1="","",HYPERLINK(IF(LEFT(A1,7)="http://","","http://")&A1))

その結果、列Bには列Aのすべてのハイパーリンクが含まれます。数式は「http://」というテキストの有無のみを処理するため、それほど堅牢ではありません。また、処理する必要がある場合もあります。 「https」アドレスを使用します。数式を調整する(つまり、より複雑にする)ことは可能ですが、マクロを使用して変換を行うことを検討することもできます。

マクロを有効にするには、選択した範囲内の各セルをステップスルーし、セルが空白でない場合は、コンテンツをハイパーリンクに変換する必要があります。以下はトリックを行います:

Sub URL_List()

Dim sTemp As String     Dim sURL As String     Dim cell As Range

For Each cell In Selection         If cell.Value <> "" Then             sTemp = Left(cell.Value, 7)

If sTemp = "http://" Or sTemp = "https:/" Then                 sURL = cell.Value             Else                 sURL = "http://" + cell.Value             End If             ActiveSheet.Hyperlinks.Add Anchor:=cell, _               Address:=sURL, TextToDisplay:=cell.Value         End If     Next cell End Sub

マクロは絶対確実ではありません。セルに何かが含まれている場合、それは有効なURLであると想定します。セルの内容を確認し、内容の前に「http://」または「https:/」のテキストが付いていない場合は、「http://」のプレフィックスが追加されます。次に、セルの内容に基づいてハイパーリンクが作成されます。

注:

このページ(または_ExcelTips_サイトの他のページ)で説明されているマクロの使用方法を知りたい場合は、役立つ情報を含む特別なページを用意しました。

_ExcelTips_は、費用効果の高いMicrosoftExcelトレーニングのソースです。

このヒント(5825)は、Microsoft Excel 2007、2010、2013、2016、2019、およびOffice 365のExcelに適用されます。Excelの古いメニューインターフェイス用のこのヒントのバージョンは、次の場所にあります。