Excel関数 逆引き集 | URLからドメイン取得 → MID+SEARCH

Excel
スポンサーリンク

概要

Excelで「URLからドメイン部分だけを取り出したい」ときは、MID関数+SEARCH関数の組み合わせが便利です。SEARCHで「//」や「/」の位置を探し、MIDでその間の文字列を切り出すことで、ドメイン部分を抽出できます。Webデータの整理やアクセスログの分析に役立ちます。


基本の使い方

書式

=MID(URLセル, SEARCH("//",URLセル)+2, SEARCH("/",URLセル,SEARCH("//",URLセル)+2) - (SEARCH("//",URLセル)+2))
  • SEARCH("//",URLセル):URL内の「//」の位置を取得
  • +2:その直後から文字を取り出すために調整
  • SEARCH("/",URLセル,SEARCH("//",URLセル)+2):次の「/」の位置を取得
  • MID:開始位置と文字数を指定してドメイン部分を抽出

具体例

URLからドメインを抽出

=MID("https://www.example.com/page", SEARCH("//","https://www.example.com/page")+2, SEARCH("/","https://www.example.com/page",SEARCH("//","https://www.example.com/page")+2) - (SEARCH("//","https://www.example.com/page")+2))

結果は「www.example.com」。

セル参照で使う

=MID(A2, SEARCH("//",A2)+2, SEARCH("/",A2,SEARCH("//",A2)+2) - (SEARCH("//",A2)+2))

A2が「https://abc.co.jp/index.html」なら結果は「abc.co.jp」。

サブドメイン付きURL

=MID(B2, SEARCH("//",B2)+2, SEARCH("/",B2,SEARCH("//",B2)+2) - (SEARCH("//",B2)+2))

B2が「http://shop.example.org/products」なら結果は「shop.example.org」。


応用テンプレート

ドメインだけでなくプロトコルも取得

=LEFT(A2,SEARCH("//",A2)-1)

「https://www.example.com」から「https」を抽出。

ドメイン以降のパス部分を抽出

=RIGHT(A2,LEN(A2)-SEARCH("/",A2,SEARCH("//",A2)+2)+1)

「https://www.example.com/page」から「/page」を抽出。

IFERRORでエラー対策

=IFERROR(MID(A2,SEARCH("//",A2)+2,SEARCH("/",A2,SEARCH("//",A2)+2)-(SEARCH("//",A2)+2)),"ドメインなし")

URLに「/」がない場合は「ドメインなし」と表示。


よくあるつまずきと対策

URLに「/」が含まれない場合

ドメインの後に「/」がないとSEARCHがエラーになります。IFERRORで補うと安心です。

「//」がない場合

プロトコルが省略されたURL(例: www.example.com)では「//」が見つからずエラーになります。必要に応じて補正処理を追加しましょう。

サブドメインの扱い

「www」や「shop」なども含めて抽出されます。トップドメインだけ欲しい場合はさらに文字列処理が必要です。


例題

問題1: A2セルの「https://www.example.com/page」からドメイン部分をB2に表示してください。

解答例:

=MID(A2,SEARCH("//",A2)+2,SEARCH("/",A2,SEARCH("//",A2)+2)-(SEARCH("//",A2)+2))

問題2: C2セルの「http://abc.co.jp/index.html」からドメイン部分をD2に表示してください。

解答例:

=MID(C2,SEARCH("//",C2)+2,SEARCH("/",C2,SEARCH("//",C2)+2)-(SEARCH("//",C2)+2))

問題3: E2セルの「http://shop.example.org/products」からドメイン部分をF2に表示してください。

解答例:

=MID(E2,SEARCH("//",E2)+2,SEARCH("/",E2,SEARCH("//",E2)+2)-(SEARCH("//",E2)+2))

問題4: G2セルのURLからプロトコル部分(httpやhttps)をH2に表示してください。

解答例:

=LEFT(G2,SEARCH("//",G2)-1)

問題5: I2セルのURLからドメイン以降のパス部分をJ2に表示してください。

解答例:

=RIGHT(I2,LEN(I2)-SEARCH("/",I2,SEARCH("//",I2)+2)+1)

まとめ

URLからドメインを抽出するには MID+SEARCH の組み合わせが基本です。

  • 「//」の位置を探す
  • その直後から「/」までを切り出す
  • IFERRORでエラー対策を加える

この流れを覚えれば、Webデータの整理やログ分析で大きな力になります。講師として強調したいのは「SEARCHで位置を特定し、MIDで切り出す」という考え方。これを習得すれば、Excelでの文字列処理がさらに自在になります。

タイトルとURLをコピーしました