• ベストアンサー

EXCELの関数でどう記述すれば良いでしょうか?

VLOOKUPを使って出来るかと思ったのですが上手く行きません。 ・J列を参照して2行目が 300 なら(K2-N2)*0.05+200) ・J列を参照して2行目が 0 なら(K2-N2)*0.03+150) と言う様にしたいのですが、どの様に記述したら良いでしょうか? どうぞ宜しくお願い致します。

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

  • ベストアンサー
  • Trick--o--
  • ベストアンサー率20% (413/2034)
回答No.1

=if(index(J:J,2,1)=0,(K2-N2)*0.03+150,if(index(J:J,2,1)=300,(K2-N2)*0.05+200,"0でも300でもない")) 「J列を参照して2行目が」を簡単に言うと「セルJ2が」になるので =if(J2=0,(K2-N2)*0.03+150,if(J2=300,(K2-N2)*0.05+200,"0でも300でもない")) 空白も0として扱ってしまうのでさらに外側にIFをつけて =IF(ISBLANK(INDEX(J:J,2,1)),"空白",IF(INDEX(J:J,2,1)=0,(K2-N2)*0.03+150,IF(INDEX(J:J,2,1)=300,(K2-N2)*0.05+200,"0でも300でもない"))) =IF(ISBLANK(J2),"空白",IF(J2=0,(K2-N2)*0.03+150,IF(J2=300,(K2-N2)*0.05+200,"0でも300でもない")))

asdfg456
質問者

お礼

丁寧なな解説付きで教えて頂いてありがとうございます。 ifを使う事に頭が回りませんでした。 シート2に表を作って数式を入れて、参照させると 式ではなくて数字が返ってくるので困っていました^^; まだまだ勉強不足ですが、精進したいと思います。 ありがとうございました。

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

関連するQ&A

  • エクセルのマクロ記述について

    J列、K列に入力されている行まで下記処理を行うマクロの記述を教えてください。 J列のセルの文字列がにSHAPEの場合、その行のB~E列のセルの色を黄色にする。 K列のセルの文字列がにSHAPEの場合、その行のF~I列のセルの色を黄色にする。

  • Excelの関数で教えていただきたく思います(Excel2003)。

    Excelの関数で教えていただきたく思います(Excel2003)。 添付画像のような表があります。 行番号が入っていませんが、「カウント」「締」の行が2行目です。 K列に「締」と言う文字が入っている行のL列にJ行の数値の引き算の結果を表示させたいのです。 添付画像の例で申し上げますと、K4とK2に「締」の文字が入っています。 従いまして、L4にJ4-J2の結果が表示されるようになります。 もし、K4が空欄でK7に「締」の文字が入っている場合はL4も空欄でかまわないのですが、その代わり、L7にJ7-J2の結果が表示されます。 わかりにくい場合や情報不足は逐一ご指摘いただければ、補足いたします。 よろしくお願い致します。

  • エクセルでA行をコピーし、3列づつ貼り付ける方法

    エクセルでAの行(たとえばA1~A63まで)の文字列を全てコピーし、一括で3列21行の範囲内で張り付けることは可能でしょうか? 3列21行の範囲内で貼り付けるとは、たとえば下記の範囲内で、I2、J2、K2、I3、J3、K3の順番で張り付けることです。 I2、J2、K2 I3、J3、K3 I4、J4、K4 I5、J5、K5 ・・・ ・・・ I19、J20、K21 いろいろググってみたのですが、思うような答えが見つかりませんでした。 分かる方がおりましたら、何卒ご教示のほど、宜しくお願い致します。

  • ExcelのVLOOKUP関数でわからないことが・・・

    N   ┃O       ┃P     ・・・   X   ┃    Y┃ Z 車番 ┃乗務員コード┃運転手 ・・・乗務員CD┃運転手┃車番 上記のような構成の表を作ってあります。 O列に数字を入力した時点で、N列・P列の両方がいっぺんに出るような関数を入れたいと言うのが目標です。隣のX列~Z列はその参照する表です。P列に =IF(O3="","",IF(O3=VLOOKUP(O3,$X$1:$X$202,1),VLOOKUP(O3,$X$1:$Y$203,2),#REF!)) と言う関数により片方はできました。Oに数字を入力した時点でP列には運転手の名前がちゃんと出ます。問題は隣の車番でして、同じようにO列の乗務員CDを参照させてVLOOKUP関数を設定したのですが、値を返してくれないどころか、Enterを押すと数式がそのままセルに表示された状態になってしまいます。ちなみにN列に打った関数は =IF(O3="","",IF(O3=VLOOKUP(O3,$X$1:$Y$202,2),VLOOKUP(O3,$X$1:$Z$203,3),#REF!)) です。しかももっとわからないことに、他にも同じ作業をさせているセルがいくつかあるのですが、唯一ココだけができないと言うことです。これはどうすれば良いのでしょうか? 下手な質問で申し訳ありませんが、これでわかる方がいましたら、是非、是非力を貸してください! よろしくお願いします。

  • EXCELのVLOOKUP関数

    VLOOKUPの検索値に、二つの列を参照するような検索値を入力することは可能でしょうか? 現在、ある表からVLOOKUPでデータを自動検索するような式を考えていますが、この表はA列とB列の2列そろって初めてKeyとなっています。 もし関数の組み合わせや、他にこの機能を実現できる方法をご存知でしたら教えてください。よろしくお願い致します。

  • ExcelでのVLOOKUP関数について

    キー1を1000倍したうえで完全一致のVLOOKUP関数を使うと#N/Aエラーが発生します。 表示上は同じように見えますが内部的に異なる値となっているのでしょうか? 試しにエラー行に対して、キーとターゲットとなる当該セルを「=」でつないで確認しても「TRUE」となります。 添付画像は、 検索先としてA列に基準キーを130.168~130.192(step 0.001)で各行へ入力し、B列はA列を1000倍、C列はB列をROUND関数で整数値に丸めたものをキーとしました。 D列にVLOOKUPで参照する値を入力し、E列以降で以下の異なるパターンで値を参照しています。 (1)【E・F列】 ・E列に整数値をキーとして130168~130192(step 1)で入力。 ・E列をキーとしてB~D列のVLOOKUP関数としています。   『=VLOOKUP(E3,B:D,3,FALSE)』 (2)【G・H列】 ・G列にE列/100をキーとして計算。 ・G列をキーとしてA~D列のVLOOKUP関数としています。   『=VLOOKUP(G3,A:D,4,FALSE)』 (3)【I列】 ・E列をキーとしてC~D列のVLOOKUP関数としています。   『=VLOOKUP(E3,C:D,2,FALSE)』 シートを複製し、キーの入力範囲を0.001~0.025(E列は1~25)にした場合はエラーがでませんでした。 その他の確認としてはTEXT、JIS、ASCなどを組み合わせて文字列としたキー同士のVLOOKUPではエラーにならず値を参照できています。

  • 参照するセルに関数が入っていると#VALUE!に

    いつもお世話になります。 WIN7 EXCELL2010 です。 年度を変更し時にO列の最終行(参照図ではO24)が変わりその時、最終行以降のセルに関数が入っているとI/J列に#VALUE!が出ます。 年度を変更した時のエラーを解決したいのですがご教示いただけませんでしょうか。 O列は B列から参照した値をN列に取り込みそれを詰めたものがO列です。 この時N列の最終の値をとったO列の最終行以降(O24)のセルに関数を入力していると I /J 列にエラーが発生し、 その解決策として、この場合で言うと O25 からは関数を入れずに対応するとエラーがでません。 I /J 列にそれぞれの日数を求めるのですが参照するのはO列です。 参考 B6 =DATE($B$4,1,1) B8 =DATE(B$4,1,14-WEEKDAY(DATE(B$4,1,0),3)) G2 =DATE($B$4,H2,1) I2 =NETWORKDAYS(DATE($B$4,H2,1),DATE($B$4,H2+1,),$Q$1:$Q$49) J2 =K2-I2 K2 =DAY(DATE(YEAR($B$3),MONTH(G2)+1,0)) M1 =IF(B6="","",B6) N1 =IF(M1="","",COUNT($M$1:M1)) O1 =IF(COUNT($M$1:$M$42)<ROW(M1),"",SUMIF($N$1:$N$42,ROW(M1),$M$1:$M$42)

  • OR関数 困っています(><。)

    excel関数で複数条件の組合せに悩んでいます。 U20=10か空白だったらK20をAQ16~AV24から探して5列目を表示し、 「5列目&AQ26」を表示させる。 もしくは、U20=5だったら、K20をAQ16~AV24から探して5列目を表示し、 「5列目&AQ27」を表示させたいです。 下記の式、どこが間違っているでしょうか。 #VALUEが出てしまいます。 =OR(IF(OR(U20=10,U20=""),"",IF(ISERROR(VLOOKUP(K20,$AQ$16:$AV$24,5,TRUE)&$AQ$26),"",VLOOKUP(K20,$AQ$16:$AV$24,5,TRUE)&$AQ$26)),IF(U20=5,IF(ISERROR(VLOOKUP(K20,$AQ$16:$AV$24,5,TRUE)&$AQ$27),"",VLOOKUP(K20,$AQ$16:$AV$24,5,TRUE)&$AQ$27),"")) すみません。教えて下さい。。

  • エクセル関数 ランキングを使って・・・

    みなさま宜しくお願い致します。 集計作業中に躓いてしまいました。 ランキング表を作成(Sheet1)しているのですが、別シート(Sheet2)に同数で同じ順位が数名います。 Sheet2はあくまで作業シートでその他の情報も含まれているので、Sheet1に表示用を作成しました。 A列に順位(作業列)、B列に実際の順位、C列に名前という風に表示させたいのですが、Vlookupを使用すると次点が抽出されません。Vlookupにそのほかの関数を加えるのかまたは別の関数があるのでしょうか。宜しくお願い致します。 【内容】 Sheet2: A列に1行目~10行目まで実際の順位(同数は同順位)B列に名前。 Sheet1: A列には1行目~10行目まで1~10の数字を(作業列とし、最終的には非表示にしようかと)。 B列には関数式:=SMALL(Sheet2!$A$1:$A$10,Sheet1!A1)を入力し、10行目までオートフィルすると、同数同順位の数値を表示します。 ここからです。 この順位に該当する人をSheet2からVlookupで引っ掛けようにも、次点以降の名前が出てきません。 何か良い方法はありますでしょうか? みなさまのお知恵をください。 宜しくお願い致します。

  • エクセル関数の使い方

    関数を熟知しておりませんので教えて下さい。 元になる表の1行目にある値(A1)を読み込んで2行目(A2)にある値を検索することが出来ません。 VLOOKUPで列の検索は出来るのですが、行の検索は出来ないのでしょうか?

このQ&Aのポイント
  • NTT東日本回線を家に通して、複合機と接続したけどファックスの送受信ができない。電話機はなしでもFAXは使えるというのをNTTに聞いたので電話機はつけていません。FAX番号はもうあります。電話機がないためツー音が鳴らせません。
  • お使いの環境はiOSで、接続方法については記載がありません。
  • 電話回線の種類はひかり回線です。
回答を見る

専門家に質問してみよう