問題4:SEACH関数を使って、B列のサイズをC,D列に書き出しなさい。


問題4の解答例
B列のサイズの区切り文字は *(アスタリスク)が使われています。
このアスタリスクはワイルドカードにも使われている文字なので、特殊な検索が必要になります。
*を検索するには、アスタリスクの前にチルダを付けて ~* とします。数式は SEARCH("~*",B2) とします。

文字列が開始位置から何バイト目にあるかを返します
B列のサイズの区切り文字は *(アスタリスク)が使われています。
このアスタリスクはワイルドカードにも使われている文字なので、特殊な検索が必要になります。
*を検索するには、アスタリスクの前にチルダを付けて ~* とします。数式は SEARCH("~*",B2) とします。

文字列が開始位置から何バイト目にあるかを返します
サーチ ビー
=SEARCHB(検索文字列,対象,開始位置)
(注) 英字の大文字と小文字を区別できませんが、ワイルドカード文字を使用できます。
SEARCH関数が文字数で文字位置を求めるのに対し、SEARCHB関数はバイト数で求めます。
検索文字を変えて、SEARCH関数とSEARCHB関数とで返る値の違いを下図に示しています。
D2セルの数式は =SEARCH(C2,$B$2) 、E2セルの数式は =SEARCHB(C2,$B$2) としています。

=SEARCHB(検索文字列,対象,開始位置)
(注) 英字の大文字と小文字を区別できませんが、ワイルドカード文字を使用できます。
SEARCH関数が文字数で文字位置を求めるのに対し、SEARCHB関数はバイト数で求めます。
検索文字を変えて、SEARCH関数とSEARCHB関数とで返る値の違いを下図に示しています。
D2セルの数式は =SEARCH(C2,$B$2) 、E2セルの数式は =SEARCHB(C2,$B$2) としています。

※コメント投稿者のブログIDはブログ作成者のみに通知されます