推しミネラルウォーターはありますか?

よろしくお願いします。
エクセル2010で特定の用語を含むものにフラグを立てていきたいです、

たとえば

  B列             C列

○○株式会社         1
△△医療法人 2
NPO×× 3
社会医療法人○◆◆ 4
株式会社☆☆         1
医療法人×××       2


というように、株式会社を含む項目には横のセルで1を
医療法人を含む項目には2を
といった感じです。
if文か何かを使って簡単にできないでしょうか?

株式会社という用語が頭にあっても後にあってもフラグは1となるようにしたいのです。
データが多いため、式をコピーすることで簡単にフラグができるようにしたいです。

アイデアを教えてください。
よろしくお願いします。


 

A 回答 (4件)

空白文字無視、、、


C2:
=IF(LEN(SUBSTITUTE(TRIM($B7)," ",""))=LEN(SUBSTITUTE(SUBSTITUTE(TRIM($B7)," ",""),"株式会社","")),IF(LEN(SUBSTITUTE(TRIM($B7)," ",""))=LEN(SUBSTITUTE(SUBSTITUTE(TRIM($B7)," ",""),"医療法人","")),"",2),1)
以下、コピー
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

お礼日時:2013/02/16 23:22

C列を列選択


セルの書式設定の表示形式のユーザー定義で
#
と設定しておきます

C1に
=IF(ISNUMBER(FIND("株式会社",A1)),1) + IF(ISNUMBER(FIND("医療法人",A1)),2)
以下コピー
のように。

必要に応じてどんどん+で、つなげていけば何パターンでも出来ます。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
参考になります。

お礼日時:2013/02/16 23:13

> 株式会社を含む項目には横のセルで1を


> 医療法人を含む項目には2を


IF関数単体ではワイルドカードを受け付けてくれませんので、

COUNTIFを使ってあいまい検索するなら
 C1セル:=IF(COUNTIF(B1,"*株式会社*")>0,1,IF(COUNTIF(B1,"*医療法人*")>0,2,""))

FIND関数も意外と使えます。
 C1セル:=IF(ISERROR(FIND("株式会社",B1))=FALSE,1,IF(ISERROR(FIND("医療法人",B1))=FALSE,2,""))

まぁ、この二択ならCOUNTIFをオススメします。



ちなみにこのままだと「社会医療法人」にも「2」が立ちます。
それは困る、と言うのであれば、「探す順番」を組み替えてやってくださいませ。

ヒント:IFを重ねると「前から順に」考えていきます。
「エクセル2010 特定の用語を含むものに」の回答画像3
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

お礼日時:2013/02/16 23:21

C2:


=IF(LEN($B2)=LEN(SUBSTITUTE($B2,"株式会社","")),IF(LEN($B2)=LEN(SUBSTITUTE($B2,"医療法人","")),"",2),1)
以下、コピー
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!