• ベストアンサー

エクセルの関数についての質問です。

エクセルの関数である文字列のみを識別し、その前の文字も一緒に返すようなことは 可能なのでしょうか? 例) セル A  B  C   D   E    1   田中OJT            ↑(この”OJT”のみを識別して”田中OJT”を全部返すという意味です。) よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.3

 御質問文に書かれている説明では、どの様な状況において >”OJT”のみを識別して”田中OJT”を全部返す という事をやりたいのかがさっぱり解りません。  「B1セルだけを識別対象としていて、B1セルに”OJT”という文字列を含んでいる文字列が入力されている場合には、B1セルに入力されている文字列を全て返し、B1セルに入力されている文字列の中に”OJT”という文字列が含まれていない場合には何も表示しない様にする」という事なのでしょうか?  それでしたら次の様な関数となります。 =IF(ISNUMBER(FIND(”OJT”,B1)),B1,"") 或いは =IF(COUNTIF(B1,”*OJT*”),B1,"")  それとも例えば、B列に上から順番に 鈴木ABC 斉藤DEF 田中OJT 冴羽XYZ などの様に文字列が並んでいて、尚且つ”OJT”を含んでいる文字列が入力されているセルが1つだけ存在している場合において、そのたった1つのセルに入力されている値である 田中OJT を返す様にしたいという事なのでしょうか?  それでしたら次の様な関数となります。 =IF(COUNTIF($B:$B,”*OJT*”),VLOOKUP(”*OJT*”,$B:$B,1,FALSE),"")  それとも、検索範囲となる文字列が入力されているセル範囲が、B列という縦一列になっているのではなく、1行目という横1行の範囲に文字列が入力されているのでしょうか?  それでしたら次の様な関数となります。 =IF(COUNTIF($1:$1,”*OJT*”),HLOOKUP(”*OJT*”,$1:$1,1,FALSE),"")

pc_gyomu_31
質問者

お礼

長文でのお返し痛み入ります。 説明不足ですみませんでした、一番下の関数を参考にさせていただきます。 ありがとうございました!

pc_gyomu_31
質問者

補足

A1~E1までの範囲です。 よろしくお願いします。

その他の回答 (2)

回答No.2

  =IF(FIND("OJT",B1)>0,B1,"") 田中OJTが「B1」にあると仮定しました

pc_gyomu_31
質問者

お礼

ありがとうございます!試してみますね!

  • tatsucoo
  • ベストアンサー率35% (32/90)
回答No.1

関数で、ということですので この辺り参考になりますでしょうか? http://www.liveway.net/technic/20090515_120615.html

参考URL:
http://www.liveway.net/technic/20090515_120615.html
pc_gyomu_31
質問者

お礼

ありがとうございます。参考にさせていただきますね!

関連するQ&A

専門家に質問してみよう