EXCELトラブル回避テクニック

Home What's
New
Site
Concept
生産性向上
基本テクニック
トラブル回避
テクニック
生産性向上
リンク
personal.xls
強化講座
生産性向上
ツール
Site Map

Coffee
Break

Guest
Book
地球風
画像館
Q&A Salon
EXCELの質問はこちらへ

 

07/16/2001 -
9.ワイルドカード文字は(なるべく)使うな! 
 
半角の ? と半角の * は、検索「編集(E)検索(F)」や置換「編集(E)置換(E)」を行う際にワイルドカードとして使える文字です。
セルに入れる文字列には、このワイルドカード文字である半角 ? や半角 * なるべく使わないほうが無難です。できれば全角の、全角のを使いましょう。


たとえば、右のようにセルに文字列が入っているとします。A4・A5・A6に半角 ? や半角 * が含まれていますね。
 
ここで、半角 ? を一括して削除しようとして、置換「編集(E)置換(E)」のダイアログで検索する文字(N)に半角 ? を指定し、置換後の文字列(E)には何も入れずにすべて置換(A)を押すとどうなるでしょうか?
結果は、A1からA6のすべてのセルのすべての文字が消えてしまいます!

半角 ? という文字を検索や置換で使うと、「任意の1文字」として扱われます。したがって、上の置換の例では、「半角1文字を削除しろ」という置き換えになってしまったわけです。
「半角 ? が入っているセルはどこかな?」と検索「編集(E)検索(F)」で半角 ? を指定しても、1文字でも文字が入力されているセルはすべて検索されてしまいます。

では、今度は置換「編集(E)置換(E)」のダイアログで検索する文字(N)に半角小文字 abc? を指定し、置換後の文字列(E)に半角大文字ABC を入れてすべて置換(A)を押すとどうなるでしょうか?
結果は、A2がABCに、A3がABCeに、A4がABCに置き換わります。 A4の”abc?”という文字列だけを置き換えるつもりが、”abc”+任意の1文字となっている文字列すべてが置き換わってしまったわけです。

半角 * を一括して削除しようと、検索する文字(N)に半角 * を指定しても半角 ? の場合と結果は同じで、すべての文字が消えてしまいます。

半角 * を検索や置換で使うと、「アスタリスクと同じ位置にある任意の数の文字」として扱われます。
したがって、A5の ”ab*” を ”ABC” に置き換える指定で置換を実行すると、A1からA5まですべてが ”ABC” に置き換わってしまいます。
 

つまり、半角の ? や半角の * を文字列の一部としてセルに入れていると、検索や置き換えを行ったときに、意図した結果以上の検索や置き換えが行われてしまう可能性があるので、危険なんです。
   

ちなみに、半角の ? と半角の * をワイルドカードではなく 「疑問符」 「アスタリスク」 文字として検索や置換で使いたい場合は、~ (チルダ) を前に記述します。たとえば、検索する文字(N)に半角 abc~? と入力して置換すると、A4だけが置き換わります。でも、そんなことは普通知らないので、使わないほうが無難と思います。

   

↑目次に戻る

back next

モーグ
Google
  Web excel7.com