一連のハイパーリンクとして、多数の電子メールアドレスを含むワークシートがありますか?もしそうなら、あなたはそれらのアドレスを引き出してプレーンテキストとしてセルに入れる方法に興味があるかもしれません。このタスクを実行する方法はいくつかあります。

最初の方法は、電子メールアドレスのハイパーリンクがすべて「mailto」というテキストで始まり、その後にコロンが続くことを覚えておくことです。したがって、ハイパーリンクの最初の部分を削除する数式を使用できます。たとえば、電子メールのハイパーリンクがセルA1にある場合、次の数式を使用できます。

=RIGHT(A1,LEN(A1)-7)

これにより、セルの内容の長さがチェックされ、最初の7文字(「mailto:」の部分)を除くすべてが抽出されます。 SUBSTITUTE関数に依存する式を使用することもできます:

=SUBSTITUTE(A1,"mailto:","")

必要に応じて、マクロを使用して、ハイパーリンクからテキストのみの電子メールアドレスに変換できます。次の単一行マクロは、変換されたハイパーリンクを返すユーザー定義関数です。

Function ExtractEmailAddress(rCell As Range)

ExtractEmailAddress = _       Mid(rCell.Hyperlinks(1).Address, 8)

End Function

マクロを使用するには、次のように、ワークシートのセルで関数を使用するだけです。

=ExtractEmailAddress(A1)

注:

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

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

このヒント(2897)は、Microsoft Excel 97、2000、2002、および2003に適用されます。Excel(Excel 2007以降)のリボンインターフェイス用のこのヒントのバージョンは、次の場所にあります。