• ベストアンサー

検索関数

お世話になります。エクセルの関数を用いてデータ処理を行っています。セル:A2~A10には30秒刻みで時間が入力されていたとして、B4に「開始 山田」(名前は実施者毎に変わります。)、B8に「終了 山田」(名前は実施者毎に変わります。※他のセルは空白です。)があるとします。もし、B2~B10に「開始」の文字があれば、左横のセルAの値をC1に返すようにしたいと思い、「=LOOKUP("開始",B2:B10,A2:A10)」としましたが、開始の後に名前があるので「#N/A」となってしまうのです。左から2文字合っていれば検索できる方法を教えて下さい。宜しくお願い致します。

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

  • ベストアンサー
  • tostem41
  • ベストアンサー率38% (7/18)
回答No.4

NO1です。 いろいろ疑問はありますが、とりあえずご提案です。C1に以下式を入力してみて下さい。 =INDEX($A$2:$B$65536,MATCH("開始",$B$2:$B$65536,1),1)

951357
質問者

お礼

遅くなりすみません。有難うございました。

その他の回答 (3)

  • Be_DaMa
  • ベストアンサー率33% (2/6)
回答No.3

ワイルドカードを使用して 「 =LOOKUP("開始*",B2:B10,A2:A10) 」としたらどうでしょうか。

951357
質問者

お礼

遅くなりすみません。出来ました有難うございました。

  • mi5cpmt
  • ベストアンサー率0% (0/1)
回答No.2

こんなのはどうでしょう?あんまりスマートな方法じゃない(バカっぽい方法)ですが。 D2に=LEFT(B2,2)と入力。ドラッグで下までコピー。 E2に=if(D2="開始",1,"") ドラッグでしたまでコピー。 C2に=if((SUM(E2:E10))>0,A2,"") と入力すれば、開始という文字列がなかったときはC2にA列の値は出ないし、開始と言う文字列があっったらC2にA列の時刻?がでますよ。 かっこ悪い方法ですけど。答えになってなかったらごめんなさい。

951357
質問者

お礼

有難うございます。A2に開始があればいいのですが、開始は一定していないのです。

  • tostem41
  • ベストアンサー率38% (7/18)
回答No.1

普通のIF文でいいのではないでしょうか? C2に =IF(Instr(B2,"開始")>0,A2,"") と式を入力して数式のみC3~C10に貼り付ければ可能です。範囲が伸びたらその分だけ数式のみ貼り付ければ問題ないはずです。

951357
質問者

補足

早々にすみません。数式を入力しましたが、「#N/A」でした。また、実際はなかり多いデータの中からC2のみに、B列に開始の文字があったならば、A列の開始時刻を返したかったのです。説明不足ですみません。

関連するQ&A

  • IF関数とLOOKUP関数の組み合わせについて

    指定したセルと等しい数値(文字列?)をLOOKUP関数を使って別シートのデータベースを検索させて、そのシートに無ければまた別のシートのデータベースを検索させるものを作りたいのですが上手くいきません。 指定したセルが空白なら空白を返すように次のような感じで作っています。 IF(A1="","",IF(LOOKUP(A1,シート1!A1:A15,A1:A15)<>A1,LOOKUP(A1,シート2!A1:A15,B1:B15),LOOKUP(A1,シート1!A1:A15,B1:B15))) VLOOKUP関数でもやってみたのですがこちらも上手くいきません。 IF(A1="","",IF(LOOKUP(A1,シート1!A1:A15,A1:A15)<>A1,VLOOKUP(A1,シート2!A1:B15,2,0),VLOOKUP(A1,シート1!A1:B15,2,0))) ご指摘いただければ嬉しいです。

  • エクセル関数

    エクセル2003を使っています。 エクセル関数を使って 以下のような複数データの中から、一つ以上存在するデータを抽出する関数を教えてください。 重複している場合は、一つだけ抽出します。 セルA1 山田   セルB1 山田    セルA2 佐藤   セルB2 佐藤 セルA3 井上   セルB3 井上 セルA4 佐藤   セルB4 三田 セルA5 三田   セルB5 (以下空白) セルA6 井上 よろしくお願いします。

  • IF関数についておしえてください。

    お世話になります。 作成している表の中で、利用しようとおもっている関数について教えてください。 A1セルに下記のようなIF関数を作成しました。 =IF(AND(B2>=1,C2<=0),"○",IF(AND(C2>=1,B2<=0),"○",IF(AND(B2>=1,C2>=1),"○",IF(AND(B2<=1,C2<=1),"")))) B2セルは別シートからVLOOKUPを利用して検索してきて、数字を表示させているセルのため、 該当しない場合”#N/A”と 表示されるところがありました。それで、”=IF(ISERROR”を利用して、#N/Aと表示される場合、空白で表示される数式にしたところ、今度はA1セルが条件にあっていないのに”○”と表示されるようになりました。≪”B2=空白(”#N/A”),C2<=1の場合にあたるのだと思います。≫ *B2セルを”空白”ではなく”0”で表示させるようにしても同様に”○”となりました。 A1セルに、  B2>=1,C2<=0の場合”○”  C2>=1,B2<=0の場合”○”  B2>=1,C2>=1の場合”○”  B2<=1,C2<=1の場合"空白" で表示できる方法をご存じの方、ご教示お願いいたします。 簡単なことなのかもしれませんが、エクセル関数初心者のため、大変困っております。 うまく、不明な点を説明できていませんでしたら、申し訳ございません。何卒 よろしくお願いいたします。

  • Excel検索等関数

    Excelのデータで同じ列の中に番号が重複している値を探し出しなおかつ任意の行数に出す関数はありますか? Sheet1   |Sheet2   A  B |   A  B        1 あ 10 | 1 あ  10 2 あ 11 | 2 あ  11 3 い 21 | 3 い  21 4 う 22 | 4      ←A4:b4は、「い」が2行ないので空白        | 5 う  22        | 6      ←A6:b6も、「う」2行ないので空白 このように、縦の重複したセルを検索して、指定行数内の場合は、空白となる関数式があればお教えください。

  • EXCEL関数について

    EXCEL関数について B1~E1セルが1箇所でも空白でない場合、A1セルに「1」を返す式を 「COUNTBLANK」関数と「IF」関数を使って試みたのですがうまく行きません。 B1~E1セルがすべて空白の場合はA1セルも空白になります。 ご教示頂きたくお願いいたします。

  • 関数によって空白したのを数値「0」に置き換える

    A.............B...............C 1 ZZ............6..............× 2 AA........... 1 3 BB 4 CC............3 B列にはそれぞれ関数が入っています。 セルB1には、B2、B3、B4の数値の合計です。 C1のセルには、C1数値とB2、B3、B4の数値の合計が一致しているか否かの判定する関数が 入っており、一致していなければ、"×"が表示させるようにしています。 しかし、ここで問題が起きました。 「VALUE」というエラーが表示されました。 上記の表では、セルB3は、空白になっております。 本来は、セルが空白になっている場合は、「0」が格納されていると思うのですが、 ここには、関数によって、文字列?の「空白」に置き換えられています。 例えば = IF((Z5) ,5, "") ようにです。 多分、関数によって文字列として認識される空白("")を置いたためと思います。 関数によって置き換えた空白("")を数値「0」として認識できる関数を教えてください。 いろいろな方法があると思いますが、「関数」のみで教えてください。 C1には、以下の関数が入っています。 =IF((B1) = (B2+B3+B4) ,"○","×")

  • 至急!エクセル関数でセルを分けたい

    ひとつのセルに名前が入ってます。空白を境に2つのセルに分けることはできますか?   A1 山田 太郎をスペースで分けて  A3 A4  山田     太郎 すごく急いでます。よろしくお願いします。  

  • エクセルのIF関数で、文字が入力されていたならば~

    エクセルのIF関数で文字が入力されていたならば~、という論理式を組み立てたいと思っています。 =IF(A1="『どんな文字でも』","",+B1-C1) A1セルに『どんな文字でも』入っていたならば、空白に。 文字が入っていなければB1セルからC1セルを引く、という状態です。 この『どんな文字でも』の部分に何を入れればいいのか教えてください。 またIF関数以外でも同様のことができれば構いません。 宜しくお願いします。

  • エクセルのFIND関数の複数セル参照について

    C4=LOOKUP(0,0/FIND(B4,テーブル1[アドレス]),テーブル1[名称])  「テーブル1」の「アドレス」列を部分一致で検索し、「B4」セルの文字列に該当する項目があったら、「テーブル1」の「名称」列のデータを「C4」セルに表示するよう、インターネット上の情報を参照しながら数式を組んでいます。  ところが、「B4」セルの文字列に該当する項目があるときはいいのですが、該当項目がない場合は「#N/A」と表示されるため、「IF」関数を追加し、以下のようにしたところ、うまく動きませんでした。 C4=IF(COUNT(FIND(B4,テーブル1[アドレス])),LOOKUP(0,0/FIND(B4,テーブル1[アドレス]),テーブル1[名称]),"未使用")  「数式の検証」で調べたところ、「LOOKUP」関数内の「FIND」関数は「テーブル1」の「アドレス」列の各セルをそれぞれ参照しているのに対して、「COUNT」関数内の「FIND」関数は同じ行(C4の場合は4)の「テーブル1」の「アドレス」列しか参照していませんでした。 「LOOKUP」関数内の「FIND」関数のテーブル1[アドレス]: {"アドレス1";"アドレス2";"アドレス3"} 「COUNT」関数内の「FIND」関数のテーブル1[アドレス]: "アドレス4"  参照内容が異なるのはなぜでしょうか。  この場合、どのようにすればよろしいのでしょうか。  また、「LOOKUP」関数は「旧バージョンとの互換性を維持するためのもの」となっており、代わりに「VLOOKUP」や「HLOOKUP」、「MATCH」関数などで代用はできないのでしょうか。  何卒ご教示よろしくお願いいたします。

  • 【エクセル】条件によって数式を削除する

    エクセルで以下のようなことは実現可能でしょうか? たとえば ・A1の値が「a」のときはC1にはB1を検索値としたルックアップの値を返す。 ・A1の値が「b」のときはC1はルックアップを使用せず直接値を入力させる。 つまり、A1の値によって、C1セルの数式を削除し、完全に空白にするということです。 「IF」関数等ではC1セルを空白にできても数式は残ってしまうため、実現することはできません。 わかりやすく言えば、「条件付書式」では条件によってセルの文字色や背景色を変更することしかできないと思いますが、それをセルの値も含めて変更するような感じです。 方法がお分かりの方、お教えください。