エクセルで「ここから〜ここまで」を抜き出す関数
「ここからここまで」の文字を抜き出したい。
エクセルでそんなことはありますか?
あるよね!
たとえば次、
<img src="https://wporep.com/img01.jpg" />
この中の https 〜 .jpg を抜き出したい。
文字列関数を検索すると特定の文字の間を抜き出す関数がない?
MID関数とFIND関数の合わせ技でできそうだけど。うーむ、関数なれしていない人にはちょっと難しい。
今回のおしゃれエクセルは誰でも簡単に「ここから〜ここまで」の文字を抜き出せる BETWEEN(ビトウィーン)関数 です。
エクセル BETWEEN 関数、爆誕 !!
お手軽に「ここから〜ここまで」の文字を抜き出す方法は以下のコードをコピペ!
これで特定の文字と文字の間を抽出できる関数ができあがります。
MID関数とFIND関数をつかわずにココカラココマデを簡単に抜き出せるようになります。
標準モジュールへコピペ
「ここから〜ここまで」の文字を抽出するBETWEEN 関数のコードです。
Function BETWEEN(文字列 As String, ここから As String, ここまで As String) As String
Dim ここから数 As Integer
Dim ここまで数 As Integer
Dim まで数 As Integer
Dim 抽出 As String
ここから数 = InStr(文字列, ここから)
抽出 = Mid(文字列, ここから数)
ここまで数 = InStr(抽出, ここまで)
まで数 = Len(ここまで)
BETWEEN = Mid(抽出, 1, ここまで数 + まで数 - 1)
End Function
ThisWorkbookにコピペ
文字列操作から関数の挿入できる表示させるためのコードです。
数式 > 文字列操作のメニューでBETWEEN関数が表示されます。
ThisWorkbook にコピペします。
Private Sub Workbook_Open()
Application.MacroOptions Macro:="BETWEEN", _
Description:="文章の「ここから」~「ここまで」の間の文字を抜き出します。", _
Category:="文字列操作", _
ArgumentDescriptions:=Array("抽出したい文章全体", "開始するテキストを指定します。", "終了するテキストを指定します。"), _
HelpFile:=""
End Subか
コードを入力しておくと関数の挿入をするときにヒントが表示されます。
BETWEEN関数の使い方
関数の挿入からBETWEENを挿入して「ここから」の文字と「ここまで」の文字を指定します
「ここから」に https
「ここまで」に jpg
と入力します。
数式の結果に http~jpg の文字が抜き出されます。
ここからここまでの文字列はセルで指定も可能です。
あー、そうじゃなくて括弧の中の文字を取り出したいんだよなー。ってときは
- まず括弧 ( ~ ) で抜きだす
Out of the Blue (デビーギブソン) → (デビーギブソン) - 置換で括弧 ( )を消す
(デビーギブソン) → デビーギブソン
でOK!
BETWEEN関数のまとめ
エクセルで「ここからここまでの」文字列を簡単に抜き出すオリジナル関数。
地味だけどお役に立つおしゃれエクセルはあなたのエクセルの作業効率を必ずやアップします!
マクロコードをコピペする方法がわからないひとはDLを準備中です。 ChatGPTに聞いてみて。