メインコンテンツへスキップ

Kutools for Office — 1つのスイート、5つのツールで、もっと多くのことを成し遂げましょう。

Excelでアクティブなハイパーリンクを返すための検索方法は?

Author Xiaoyang Last modified

日常的なExcelでの作業では、特定のデータエントリに関連する値を見つけて返すためにVLOOKUP関数を使用することが一般的です。しかし、よくある問題として、検索結果がハイパーリンクの場合があります。その場合、クリック可能なアクティブなリンクではなく、ただのプレーンテキストURLが表示されてしまいます。例えば、ソースデータに埋め込みハイパーリンク付きのウェブサイトリンクが含まれている場合、通常のVLOOKUPの後では、下記のようにフォーマットされていないテキストのみが結果として表示されます。

A screenshot showing the issue of VLOOKUP returning plain text instead of hyperlinks in Excel

このような場合、検索によってアクティブなハイパーリンク(クリックしてブラウザで開けるもの)を返すように設定することで、使い勝手が向上し、時間も節約できます。これは、ウェブアドレスやファイルパス、その他のクリック可能なリソースを含むデータセットにとって重要です。

このチュートリアルでは、アクティブなハイパーリンクを検索で返すための複数の実用的な解決策を紹介します。それぞれのシナリオや適用可能なデータタイプ、潜在的な制限についても分析します。また、最適な方法を選択するための重要な注意点、トラブルシューティングのヒント、推奨事項についても学びます。


arrow blue right bubbleアクティブなハイパーリンクを返すための数式を使った検索

検索を行い、アクティブなハイパーリンクとして値を返すには、HYPERLINK関数とVLOOKUP関数を組み合わせることができます。この方法はシンプルで、ハイパーリンクがテキスト形式のURLアドレス(例:「https://www.example.com」やネットワークファイルパスなど)として保存されているソースデータに適しています。これにより、返される値がワークシート上でクリック可能になります。

検索値(名前など)がある列と、URLがプレーンテキストまたはハイパーリンクとして保存されている列の2列を持つテーブルがあると仮定します。ユーザー入力値に基づいて対応するアクティブなハイパーリンクを取得するには、次の手順に従ってください:

1. 結果を表示したい空白のセルに次の数式を入力します:

=HYPERLINK(VLOOKUP(D2, $A$1:$B$8,2, FALSE))

2. Enterキーを押して確認します。セルには、以下に示すように、アクティブでクリック可能なハイパーリンクが表示されます:

A screenshot showing the use of HYPERLINK and VLOOKUP formula to return active hyperlinks in Excel

パラメータと使用上の注意:

  • D2: 検索したい値が入っているセル。
  • $A$1:$B$8: 1列目に検索値があり、2列目にハイパーリンクが格納されているデータ範囲。数式をコピーする場合は絶対参照を使用してください。
  • 2: ハイパーリンクが存在する範囲内の2列目を指定します。

ヒント:

  • 検索値が見つからない場合、数式はエラー(#N/A)を返します。検索値がテーブル範囲内に正確に一致していることを再確認してください。
  • 表示テキストを実際のハイパーリンク(例:URLではなく名前を表示)と異なるものにしたい場合、任意の第2パラメータを追加することができます。 HYPERLINK:
    =HYPERLINK(VLOOKUP(D2,$A$1:$B$8,2,FALSE),D2)
    これにより、D2の値がリンクテキストとして表示されます。
  • この方法は、ハイパーリンクが標準的なURLまたはファイルパスのテキストとして保存されている場合にのみ機能します。表示テキストとハイパーリンクアドレスが異なる、またはセルに生のURLが含まれていない「フレンドリー」な表示名を持つExcel挿入ハイパーリンクを復元することはできません。

一般的な問題とトラブルシューティング:

  • 結果がクリックできない場合、データに完全かつ有効なWeb URL(「http://」または「https://」を含む)が含まれていることを確認してください。
  • 結果が不正または不足している場合、検索範囲を確認し、列インデックスがハイパーリンクを含む列と一致していることを確認してください。
  • ローカルファイルの場合は、ハイパーリンクパスが適切な形式(例:"C:\Folder\file.xlsx")を使用していることを確認してください。

利点:設定が簡単で、数式をドラッグして複数の行に適用でき、ハイパーリンクがプレーンテキストURIとして保存されているテーブルに最適です。

制限:表示テキストとハイパーリンクアドレスが異なる場合、またはセルに表示テキストしかない手動挿入ハイパーリンクに対して、これらを個別に取得することはサポートされていません。

arrow blue right bubbleVBAコード – 検索を介してアクティブなハイパーリンクを返し挿入する(高度なシナリオ)

特定の値を範囲内で検索し、単なるプレーンなURLではなく、表示テキストとクリック可能なリンク自体を含むオリジナルのアクティブなハイパーリンクを返したい場合、VBAは信頼性の高い解決策を提供します。このコードは選択した範囲内でターゲット値を検索し、一致が見つかった場合、指定したセルに正確なハイパーリンク(テキスト + アドレス)をコピーします。これは特に、表示テキストとハイパーリンクアドレスが異なる場合や、数式ベースの方法では実際のリンクをキャプチャできない場合に役立ちます。

この方法は、「フレンドリー」な表示名に裏付けられたハイパーリンク、ファイルやフォルダへのハイパーリンク、または非標準的なハイパーリンク形式が含まれるデータに特に有用です。VBAを使用すると、可視リンクテキストと裏側のハイパーリンクアドレスの両方をコピーしたり、検索結果を利用して新しい場所にハイパーリンクを再挿入することができます。

注意点:Excel環境でマクロが有効になっていることを確認してください。特に重要なデータを扱う場合は、常にワークブックのバックアップを取ってからVBAスクリプトを実行してください。

利点:セル挿入ハイパーリンクや表示テキストとハイパーリンクアドレスの分離などの複雑なケースに対応可能。バッチ処理やカスタマイズされた結果の処理が可能です。

制限:基本的なVBAの知識が必要で、すべての制限されたまたはWebベースのExcel環境でサポートされているわけではありません。

1. 開発 > Visual Basic をクリックして VBA エディタを開きます。新しく開かれたウィンドウで、挿入 > モジュール をクリックし、以下のコードをモジュールに貼り付けます:

Sub LookupAndInsertHyperlink()
    Dim LookupValue As String
    Dim LookupRange As Range
    Dim ResultCell As Range
    Dim cell As Range
    Dim hyperlinkFound As Boolean
    Dim linkAddress As String
    Dim linkText As String
    
    On Error Resume Next
    xTitleId = "KutoolsforExcel"
    
    Set LookupRange = Application.InputBox("Select the lookup range (must include display text/cell and hyperlink)", xTitleId, Selection.Address, Type:=8)
    Set ResultCell = Application.InputBox("Select the cell to output the hyperlink", xTitleId, "", Type:=8)
    LookupValue = Application.InputBox("Enter the value to lookup", xTitleId, "", Type:=2)
    
    hyperlinkFound = False
    For Each cell In LookupRange
        If cell.Value = LookupValue Then
            If cell.Hyperlinks.Count > 0 Then
                linkAddress = cell.Hyperlinks(1).Address
                linkText = cell.Value
                ResultCell.Hyperlinks.Add Anchor:=ResultCell, Address:=linkAddress, TextToDisplay:=linkText
                hyperlinkFound = True
                Exit For
            End If
        End If
    Next
    
    If Not hyperlinkFound Then
        ResultCell.Value = "No matching hyperlink found"
    End If
End Sub

2. スクリプトを実行するには、ワークブックを開いた状態で Alt + F8 を押し、LookupAndInsertHyperlink を選択して 実行 をクリックします。

3. 表示されるダイアログで:

  • 検索データ範囲(値とそのハイパーリンクを含む)を選択します。
  • 出力ハイパーリンクのターゲットセルを選択します。
  • 検索したい値を入力します。マクロは一致する値を見つけ、そのハイパーリンク(表示テキストがリンクと異なる場合でも)を抽出し、指定した場所にアクティブなハイパーリンクとして挿入します。

実用的なヒントとエラーに関する注意:

  • 値が見つからない場合、またはセルにハイパーリンクがない場合、ターゲットには「一致するハイパーリンクが見つかりません」と表示されます。
  • 一度に複数の検索を処理したい場合は、VBAコードを拡張するか、必要に応じてスクリプトを複数回実行することを検討してください。
  • このスクリプトは、セル内のハイパーリンクが単なるURL文字列でない場合にも有効であり、同時にアドレスと表示テキストの両方をコピーします。

トラブルシューティングの提案:

  • 入力範囲に実際のハイパーリンクのある列が含まれていることを確認してください。
  • VBAマクロが実行されない場合、Excel設定でマクロが有効になっているかどうかを確認してください。
  • 「一致するハイパーリンクが見つかりません」が表示される場合、検索値が正しいことと、該当の行に対応するハイパーリンクが存在することを再確認してください。
  • 変更を元に戻す必要がある場合に備えて、必ずマクロを実行する前にワークブックを保存してください。

まとめ:

  • 標準的なテキストベースのハイパーリンクや簡単な検索では、数式を使用します。
  • より高度なニーズ、たとえば手動で挿入されたハイパーリンクの復元、表示テキストとリンクアドレスの取得、または範囲全体にわたって動的に結果を適用する場合には、VBAを使用します。

最高のオフィス業務効率化ツール

🤖 Kutools AI Aide:データ分析を革新します。主な機能:Intelligent Executionコード生成カスタム数式の作成データの分析とグラフの生成Kutools Functionsの呼び出し……
人気の機能重複の検索・ハイライト・重複をマーキング空白行を削除データを失わずに列またはセルを統合丸める……
スーパーLOOKUP複数条件でのVLookup複数値でのVLookup複数シートの検索ファジーマッチ……
高度なドロップダウンリストドロップダウンリストを素早く作成連動ドロップダウンリスト複数選択ドロップダウンリスト……
列マネージャー指定した数の列を追加列の移動非表示列の表示/非表示の切替範囲&列の比較……
注目の機能グリッドフォーカスデザインビュー強化された数式バーワークブック&ワークシートの管理オートテキスト ライブラリ日付ピッカーデータの統合セルの暗号化/復号化リストで電子メールを送信スーパーフィルター特殊フィルタ(太字/斜体/取り消し線などをフィルター)……
トップ15ツールセット12 種類テキストツールテキストの追加特定の文字を削除など)50種類以上のグラフガントチャートなど)40種類以上の便利な数式誕生日に基づいて年齢を計算するなど)19 種類の挿入ツールQRコードの挿入パスから画像の挿入など)12 種類の変換ツール単語に変換する通貨変換など)7種の統合&分割ツール高度な行のマージセルの分割など)… その他多数
Kutoolsはお好みの言語で利用可能 ― 英語、スペイン語、ドイツ語、フランス語、中国語、その他40以上の言語に対応!

Kutools for ExcelでExcelスキルを強化し、これまでにない効率を体感しましょう。 Kutools for Excelは300以上の高度な機能で生産性向上と保存時間を実現します。最も必要な機能はこちらをクリック...


Office TabでOfficeにタブインターフェースを追加し、作業をもっと簡単に

  • Word、Excel、PowerPointでタブによる編集・閲覧を実現
  • 新しいウィンドウを開かず、同じウィンドウの新しいタブで複数のドキュメントを開いたり作成できます。
  • 生産性が50%向上し、毎日のマウスクリック数を何百回も削減!

全てのKutoolsアドインを一つのインストーラーで

Kutools for Officeスイートは、Excel、Word、Outlook、PowerPoint用アドインとOffice Tab Proをまとめて提供。Officeアプリを横断して働くチームに最適です。

Excel Word Outlook Tabs PowerPoint
  • オールインワンスイート — Excel、Word、Outlook、PowerPoint用アドインとOffice Tab Proが含まれます
  • 1つのインストーラー・1つのライセンス —— 数分でセットアップ完了(MSI対応)
  • 一括管理でより効率的 —— Officeアプリ間で快適な生産性を発揮
  • 30日間フル機能お試し —— 登録やクレジットカード不要
  • コストパフォーマンス最適 —— 個別購入よりお得