• ベストアンサー

EXCELの関数で簡単に出来る?

どなたか教えて頂けたらありがたいです。 EXCELで下記のようなデータがあるとします。     A    B    C    D 1   あ    あ    a    a 2   か    い    i    ka 3        う    u 4        え    e 5        お    o 6        か    ka A列にある文字をB列から検索し、 ヒットしたらB列と同じ行のC列の値をD列に表示する・・・ D列を簡単に求めたいのです。 良い方法ありますでしょうか?

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

  • ベストアンサー
  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.3

次の方法は如何でしょうか。 B列に文字列が見つからない場合、空白としています。 =IF(COUNTIF(B:B,A1),VLOOKUP(A1,B:C,2,FALSE),"")

kanashisu-
質問者

お礼

助かります! そのまま使わせて頂きました。 ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (2)

noname#79209
noname#79209
回答No.2

D1に =VLOOKUP($A1,$B$1:$C$6,2,FALSE) として、下へコピー。

kanashisu-
質問者

お礼

簡単に出来るんですね。 ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。
  • hana-hana3
  • ベストアンサー率31% (4940/15541)
回答No.1

VLOOKUP関数ですね。

kanashisu-
質問者

お礼

ありがとうございました。 助かりました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • エクセルのMATCH関数について

    エクセルのMATCH関数についての質問ですが、どうしてもエラーが表示され悩んでいます。どうか教えていただければと思います。 たとえば下記のような場合なぜかエラーが発生してしまいますがどうしてでしょうか?      A列   B列   C列   D列   E列   F列 1行              A     B    A+B  戻り値 2行    2.0        1.0    1.2   2.2   2 3行    2.2        0.9    1.1   2.0   1 4行    2.4        1.1    1.3   2.4   #N/A 5行    2.6        1.0    1.4   2.4   3 使用している関数は、 E列2行 =C2+D2  F列2行 =MATCH(E2,$A2:$A5,0) E列3行 =C3+D3  F列3行 =MATCH(E3,$A2:$A5,0) E列4行 =C4+D4  F列4行 =MATCH(E4,$A2:$A5,0) E列5行 =C5+D5  F列5行 =MATCH(E5,$A2:$A5,0) です。ここでどうしても、F列4行にエラー値(#N/A)が発生してしまいます。どうしてでしょうか? E列4行とE列5行は同じ値にもかかわらず戻り値が違うのはどうしてでしょうか? また、不思議なことにE列4行に手入力で2.4の値を入力した場合は戻り値は3となり、正しい値を表示します。どうしてでしょうか? 以上、よろしくお願いします。

  • EXCELの関数について

    いつもお世話になってます。ありがとうございます。 excelの関数についてお聞きしたいことがあり質問しました。      A列 B列 C列 …        a   c   e  g  i 1行 2日 ○  △ □ ● ■ となっているデータを      A列 B列 C列 …      a   b   c  d   e  f  g  h  i … 1行 1日 2行 2日 3行 3日 こんなシートに自動的に打ち込めるようにしたいのです。      A列 B列 C列 …      a   b   c  d   e  f  g  h  i … 1行 1日 2行 2日○    △    □    ●    ■ 3行 3日 が完成図イメージです。 一番上の色々なデータから表を完成させたいのですがどうすればできるでしょうか。 vlookupやhlookupでは一行ずつの打ち直しが必要になってしまいます。 よろしくお願いします。

  • エクセルの関数で2つの条件に合うものを探す。

    エクセルの関数で下記のことをしたいのです。 表(1) T>=0.6  0.6>T>=0.3  0.3>T>=0.15 U<2   A     B       C 2<=U<3  B     B-C     D 3<=U<4  C      C      D 4<=U<6  D     C-D     D 6<=U    E      D      D 別の表(2)に U   T         1.5  0.3         0.9  0.8             5.9  0.13         ・   ・         ・   ・ とあります。 そのためUの値とTの値で表(1)のAからE値を抽出し別の表にAからEを表示したいのです。エクセルの関数(IF,AND,LOOKUP等)を試してみたのですがうまくいきません。できるだけエクセルの関数のみで、よい方法があれば教えてください。よろしくおねがいします。     

  • エクセル関数について再質問

    再度質問します。よろしくお願いします。ちなみに、エクセル2007です。 セルA1に10、B1に11、C1に12、D1に13、E1に100、A2に14、B2に15、C2に16、D2に17、E2に200、同様にA3に18、A4に22、E3に300、E4に400と、値が入っています。(この値は、その都度変わります)、そして、セルA10に=A1、B10に=B1、C10に=C1、D10に=D1、E10に=E1、・・・・      D13に=D4,E13に=E4と入力しています。 このとき、10,11,12,13行のE10,E11,E12,E13の値を優先キーとして、降順でセルA20~に10~13行の値だけを自動的に移したいのですが。 今度は分かってもらえましたかね?・・・・・・・ よろしくお願いします。

  • エクセル関数のことで困っています。

    今、簡単な表計算の表を作っていますが、先に進まず困っています。 A1~A200のセルに1~200の番号が昇順で入っています。そしてデータとして,B2,C2,D2,E2 に各々a、b、c、dが入っており,,B3,C3,D3,E3 にa1、b1、c1、d1・・・・・・・・・・・・B200,C200,D200,E200にw,x,y,zのようにB,C,D,E列に適当な数が入っています。 そこで、E列の値で昇順  SMALL(D$1:D$200,A1)  に並べ替え、同時にB,C,D,Eの値も返したいのです。つまりエクセルの並べ替え機能を関数で自動で行いたいのです。 今は、関数の、ROW,SUMPRODUCT,COUNT,INDEX,LARGE,COUNTIF,COLUMN,などを使い関数バーに5行ほどになり、処理にとても時間がかかります。 何とか、簡単で早い計算式はないでしょうか。 よろしくおねがいします。

  • エクセル関数 VLOOKUPで

    エクセル2007です A列に商品名 B列に価格 C列に税込価格(B1*1.05) の表があります。    A   B  C  |いちご|900|945|  |みかん|300|315|   D1にA列の商品名を選択して入力できるように 入力規則でドロップダウンリストがら選択にしました。 (範囲はA列です) E1には商品名を選択すると税込金額が反映されるようにしたいので、 =IF(D1="","",VLOOKUP(D1,A:C,3,1)) と入力しました。        D   E           D   E 正 |いちご|945|  →  誤 |いちご|315|   D1の商品名と同行の3列目の値を返す…とやりたかったのですが、 別の行の値を返します。(C列の値であることは確かなのですが…) なぜでしょうか? また、テーブルを昇順で表示とあるのですが、優先はどの列でしょうか? A列優先でもD列優先でも値が違います。

  • ある値以上のデータの個数を表示させる関数は?

    25行目から下に、複数のデータがあります。 E,G,I,K,M,O,Q,S,U,W の列だけで、 値が9以上であるセルの個数を 「 B列 」 に表示させる関数はどのようになりますでしょうか? よろしくお願い致します。 下記例の場合は、 9以上の値は、 4つありますのでB列に 「 4 」 と表示させます。 --------------- 実行前   A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X 25             10    8     7     9     12     3     25     1     4     5 ・ ・ 実行後   A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X 25    4        10    8     7     9     12     3     25     1     4     5 ・  

  • エクセル関数について

    エクセルでセルA1に1、B1に2・・・・・Iに、J1に10が入力された表があります。また、A2に1、B2に3、C2に5、D2に7が入力されています。A2からD2を検索してA3に1、C3に1、E3に1、G3に1を入力します。次に、A2からにD2に2,4,6,8、と入力して同様にB3、D3、F3、H3に1が入るようにしたいのです。 このとき、1,3,5,7の値と2,4,6,8、の値が消去されず。またA2からD2に再度異なる数を入力した場合3列の値に1が加算されるようにしたいのですが、教えてください。

  • エクセルの関数で困っています。どうかご教授お願いします。

    下記の様な例で、C列の値でA列を検索して一致していた場合は、B列の内容をD列に表示させたいのです。 例) A列 B列 C列 D列 1 A 1 2 B 1 3 C 2 4 D 2 5 E 3 結果として下記のように表示される為にはどうすればよいのでしょうか。どなたか教えていただけますでしょうか。 結果) A列 B列 C列 D列 1 A 1 A 2 B 1 A 3 C 2 B 4 D 2 B 5 E 3 C

  • エクセル関数式により、列の最後尾から2行目の値からの最大値の求め方。

    エクセル関数式により、列の最後尾から2行目の値からの最大値の求め方。  初めまして、よろしくお願いします。      A  B  C  D  E 1    赤  青  黄  緑  黒 2  3    4    1  3  2  0  9 5    9  1  3  4  3 ・    ・  ・  ・  ・  ・ ・    ・  ・  ・  ・  ・   112  4  6  1  9  6 113  7  7  5  8  1 114  6  9  1  3  7    115  7     2  5  0 116  8     0     0  という表があります。 各列の空白、もしくは0の入力されている後の値(A列では8、B列では9、C列では2、D列では5、E列では7)を最後尾とし、そこから2行目の値(A列では6、B列では6、C列では5、D列では8、E列では6)からの列(A列ではA4の1まで、B列ではB4の3まで、C列ではC4の2まで、D列ではD4の0まで、E列ではE4の9まで)の間の値の最大値(A列で、見えている部分のみではA5の9になります)を抜き出すことのできる関数式の方法がありましたら、教えていただきたく。よろしくお願いします。

専門家に質問してみよう