エクセルで、青文字のハイパーリンクから、URLだけを取り出したいのですが・・・ | パソコンが好きになるブログ〜表技・裏技・便利技伝授!

パソコンが好きになるブログ〜表技・裏技・便利技伝授!

北海道札幌市中央区 大通駅徒歩7分のパソコンスクール「リズ札幌・ライフデザインスクール」パソコンインストラクター川上雄大によるパソコン・IT・ワンポイントレッスン。
スクールでのいろんな方のパソコンレッスンだったり、パソコンとは関係ない話だったり…

こんにちは、パソコンワンポイントレッスン!

PCインストラクターの川上です。


昨日、エクセルの表をお見せしたところ、色んなご質問がでました。

その中から、このような↓ご質問をピックアップしてみます。


エクセルで、青文字のハイパーリンクから、URLだけを取り出したいのですが・・・

(そもそもURLって何?という方は、『URLって?』をご覧くださいませ。)


どういうことか、といいますと・・・


「マイページ」の「読者管理」の「読者になったブログ」からエクセルにコピー&ペーストして、ブログタイトルの青文字のハイパーリンクがB列に表示されているとします。

川上雄大のワンポイントレッスン!


その隣のC列に、B列の青文字のハイパーリンクのURLを表示させる

川上雄大のワンポイントレッスン!


といったことですね。

手動でURLを取得するには、いったんブログタイトルを「ハイパーリンクの編集」画面の「アドレス」欄から、URLをコピー&ペーストしていけばよいです。

でも、ひとつずつやっていくと、結構手間だったりします。

ですので、こういうのはエクセルの関数で、ちゃちゃっと求めたいものですが・・・

今のところ、エクセルにもともとある関数で、このような関数はありません。


この場合は、
VBAで事前に独自の関数を作っておかなければなりません。

ま、今回はすでに、

GetURL関数

が作られていることとします。
(ええ~、ここがポイントだろ~、という方は、最後の<補足>をご覧くださいませ。)


そして、進みます。

まず、セルC4を選択して、キーボードから「=get」

と入力します。
すると、関数の候補が表示されます。

川上雄大の

そこで、「GetURL」をダブルクリックします。



「=GetURL(」と表示されます。


セルB2をクリックします。
(「=GetURL(B4」と表示されます。)



最後に「)」を入力します。

川上雄大のワンポイントレッスン!


これで、完成ですので、Enterキーを押して確定します。
すると、URLが表示されます。

川上雄大のワンポイントレッスン!

あとは、下方向へ式をコピーして、


川上雄大のワンポイントレッスン!


完成です!

川上雄大のワンポイントレッスン!


このように、エクセルで、青文字のハイパーリンクから、URLだけを取り出すことができます。



<補足>
ただし、事前に「開発」タブ内から、VBE(Visual Basic Editor)を起動して、(Alt + F11でもOKです。)

[挿入]-[標準モジュール]で、次のコードをコピー&ペーストしておく必要があります。


Function GetURL(lnk As Range) As String
Dim Add As String
If lnk.Hyperlinks.Count > 0 Then
    With lnk.Hyperlinks(1)
        If .Address Like "http*" Then
        Add = .Address
        End If
    End With
End If
If Add <> "" Then
    GetURL = Add
Else
    GetURL = ""
End If
End Function

(以上のコードは絶対ではありません。あくまでも一例ですので。)


なお、
こういった独自関数などのプログラムがあるエクセルを保存する場合は、「Excelマクロ有効ブック」で保存する必要がありますので、お気を付けくださいませ。


以上になりますが、エクセルのマクロやVBAについてお勉強されていない方は、何がなにやら、チンプンカンプン・・・だと思いますので、勉強されたときに、またこの記事を開いていただければ、有難いです。


アメブロで、このような記事書いたら、きっと「いいね!」は極端に少ないんだろうな~(笑)



以上、パソコンワンポイントレッスンでした。


LIDS札幌・ライフデザインスクール
川上 雄大