関数 | 機能 |
---|---|
LEN | 文字数を得られる |
FIND | 文字列を検索し、その位置を得られる。大文字/小文字を区別する |
SEARCH | 文字列を検索し、その位置を得られる。大文字/小文字を区別しない |
SUBSTITUTE | 文字列を置換できる |
LEFT | 先頭 (左端) から、指定の文字数の文字を得られる |
RIGHT | 末尾 (右端) から、指定の文字数の文字を得られる |
MID | 指定の位置から、指定の文字数の文字を得られる |
文字列の置換や抽出はテキストエディタへコピーして編集した上で、Excelへ貼り付けて戻す方法もあります。
FIND(検索文字列, 対象, [開始位置])FIND 関数 - Microsoft サポート
検索文字列が対象内で、開始位置以降で最初に出現する位置を得られます。
式 | 結果 |
---|---|
=FIND("B","ABCABC") | 2 |
=FIND("B","ABCABC",2) | 2 |
=FIND("B","ABCABC",3) | 5 |
=FIND("b","ABCABC") | #VALUE! |
FINDは最初に出現する位置を返しますが、これとは逆に、最後に出現する位置を得る方法を考えます。
これを順に実行すると、下表のようになります。
A | B (式) | B (結果) | |
---|---|---|---|
1 | A\B\C\D | =SUBSTITUTE(A1,"\","") | "ABCD" |
2 | =LEN(A1)-LEN(B1) | 3 | |
3 | =SUBSTITUTE(A1,"\","*",B2) | "A\B\C*D" | |
4 | =FIND("*",B3) | 6 |
最初に出現する位置を用いて順に切り出すことで、2番目以降に出現する位置を得られます。
A | B (式) | B (結果) | |
---|---|---|---|
1 | A\B\C\D | =FIND("\",A1) | 2 |
2 | =MID(A1,B1+1,LEN(A1)) | B\C\D | |
3 | =FIND("\",B2)+B1 | 4 | |
4 | =MID(A1,B3+1,LEN(A1)) | C\D | |
5 | =FIND("\",B4)+B3 | 6 |
TEXTSPLIT関数が使えないときは、この位置を用いることで文字列を分割できます。
SUBSTITUTE(文字列, 検索文字列, 置換文字列, [置換対象])SUBSTITUTE 関数 - Microsoft サポート
式 | 結果 |
---|---|
=SUBSTITUTE("ABCABC","B","_") | "A_CA_C" |
=SUBSTITUTE("ABCABC","B","_",1) | "A_CABC" |
=SUBSTITUTE("ABCABC","B","_",2) | "ABCA_C" |
=SUBSTITUTE("ABCABC","B","_",3) | "ABCABC" |
LEFT(文字列, [文字数])LEFT 関数 - Microsoft サポート
式 | 結果 |
---|---|
=LEFT("12345") | "1" |
=LEFT("12345",3) | "123" |
RIGHT(文字列,[文字数])RIGHT 関数 - Microsoft サポート
文字数は、末尾から数えた文字数です。これを先頭から数えた文字数で、末尾の文字列を得たいならば、MIDを用います。
式 | 結果 |
---|---|
=RIGHT("12345") | "5" |
=RIGHT("12345",3) | "345" |
MID(文字列, 開始位置, 文字数)MID 関数 - Microsoft サポート
式 | 結果 |
---|---|
=MID("12345",2,3) | "234" |
=MID("12345",10,3) | "" |
=MID("12345",2,10) | "2345" |
文字列からふりがなを得られます。PHONETIC 関数 - Microsoft サポート