エクセルの関数の使い方と注意点

このQ&Aのポイント
  • エクセルの関数の使い方や注意点について、具体的な式を例に解説します。
  • 具体的な計算式における条件分岐や表示方法の設定方法を説明します。
  • 計算結果が負の数の場合や特定の条件の場合に特定の文字列や値を表示する方法について説明します。
回答を見る
  • ベストアンサー

エクセルの関数

先日、Gooで教えていただいて作った下記のような式があるのですが、 答えが負の数になるときは”0”と表示したいのですが、方法が解りません。どなたか教えてください。宜しくお願いします。 =ROUND(IF(P23<=135416,P23-85834,IF(P23<=149999,(P23*0.6-63334),IF(P23<=299000,(P23*0.7-78334),0)))*0.05,-1) また、下記の式でG3*0.5が2500以上の時は2500、G3*2が10000以上のときは10000と表示したいのですが、方法が解らず、とりあえず他のセルにIF(I3>10000,10000,IF(I3<G3,IF(I3>=2500,2500,)))と書いてやってますがもっとスマ-トやり方があったら教えてください。 =IF((B3*470+C3*60+D3)<((B$16-1)*470),,IF((B3*470+C3*60+D3)<(B$16*470-110),G3*0.5,G3*2))

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

  • ベストアンサー
noname#79209
noname#79209
回答No.1

あまりスマートでは無いですが、 ご質問文の3行目の式を列Q辺りに記入し、R列に =IF(Q23<0,0,Q23) とし、Q列の幅を0(ゼロ)にするとか.... あとは、0表示でなく、何も表示しなくても良いなら、 ご質問文の3行目の式のあるセルの表示書式を 「#,##0;」 と最後に「;(セミコロン)」を加えるテもあります。 表示書式はセル内容が「プラスの時」「マイナスの時」「ゼロの時」「文字の時」で 表示方法を変えられます、それぞれは「;(セミコロン)」で区切って設定しますので 上記の場合は「マイナス時は何も表示しない」という設定になります。 第二の質問ですが、 > G3*0.5が2500以上の時は2500、G3*2が10000以上のときは10000と表示したい G3に対する2つの条件は全く同じでは? G3が5000以上なら、G3*.05は2500超え、G3*2も10000超えですし、 G3が4999以下なら、G3*.05は2500未満、G3*2も10000未満です。 全体的に条件をもっと整理してみることをお勧めします。

syakutori64
質問者

補足

ありがとうございます。この方法しかないんですね。 これでやってみます。 二番目の質問は、説明が足りませんでした。 これは手当ての計算で、全出勤(B3*470+C3*60+D3)<((B$16-1)*470)の場合は2倍の手当てG3*2この場合上限は10.000、 一日未満の欠勤(B3*470+C3*60+D3)<(B$16*470-110)の場合G3*0.5でこの場合上限は2500 G3一日あたりの基本手当ての額です。

関連するQ&A

  • EXCELの入力規則について教えてください。

    1つのセルに、入力規則と数式が入ったセルがあるのですが、誤って誰かが数式を消してしまわないように、保護をかけたいのです。 しかし、保護をかけると、入力規則が動かなくなってしまうので困っています。 F3からF354が入力規則と数式が入ったセルなのですが、そのセルには下記のような式が入っています。 =IF($D3="","",IF(VLOOKUP($D3,'リスト(総合)'!$B$4:$C$354,2,0)<>0,INDEX('リスト(総合)'!$C$4:$C$354,MATCH($D3,'リスト(総合)'!$B$4:$B$354,0)),"")) で、入力規則は、「入力値の種類」が「リスト」で、「元の値」は、下記のような式が入っています。 =INDIRECT($I3) I3からI354には、下記のような式が入っています。 =IF(D3="","",IF(VLOOKUP($D3,'リスト(総合)'!$B$4:$N$354,2,0)='リスト(総合)'!$P$4,"リスト(総合)!S4",IF(VLOOKUP($D3,'リスト(総合)'!$B$4:$N$354,2,0)='リスト(総合)'!$P$5,"リスト(総合)!S5",IF(VLOOKUP($D3,'リスト(総合)'!$B$4:$N$354,2,0)='リスト(総合)'!$P$6,"リスト(総合)!S6",IF(VLOOKUP($D3,'リスト(総合)'!$B$4:$N$354,2,0)='リスト(総合)'!$P$7,"リスト(総合)!S7","名前"))))) 何かいい方法はないでしょうか? 使っているのは、Microsoft Office 2010 です。 どうぞよろしくお願いいたします。

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

    手数料の入力の仕方を教えてください。 D3のセルに手数料を打つ場合の関数 C3が振り込み金額 I3が銀行名 C3が 30、000以上で I3が UFJ銀行 の時 D3に 315 と表示したいです。 C3が 30、000未満で I3が UFJ銀行 の時 D3に 105 と表示したいです。 C3が 30、000以上で I3が UFJ銀行以外 の時 D3に 735 と表示したいです。 C3が 30、000未満で I3が UFJ銀行以外 の時 D3に 525 と表示したいです。 ややこしくてすみませんがお知恵をお借りしたいです。

  • エクセル IF関数で質問です。

    エクセル IF関数で質問です。 教えてください。下記の式はどういう意味ですか? =IF(I38=0,"",SUM(C38:I38)/$B$38) なかなかIF関数が覚えられません。簡単に理解できる方法はありませんか? IFを入力するときにみなさんはどうイメージしてますか? アドバイスください。

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

    こんにちは。 エクセル関数でわからないところがあるので、教えてください。 Round関数で、四捨五入の小数点以下の表示を切っています。 そうすると、その合計を取ると、実際は表示は小数点以下が 切れていても、元の数字は小数点が残っているので 合計を出した時に端数が合いません。 =IF(E5=0,"",G5) このG5に当たる個所が、Round関数が入っていて 合計が合いません。 ちなみにG5には、=ROUND(C6,2) こんな式が入っています。 C6の数値が小数点になっています。 分かる方、教えてください。よろしくお願いいたします。

  • IF関数

    IF関数で下記のような式を作って見ましたがうまく答えが返ってきません。 条件は P9<=135416 の時は(P9-117501)×0.05 135417<=P9<=149999の時は(P9-(P9×0.4+63334))×0.05 150000<=P9<=299000の時は(P9-(P9×0.3+78334))0.05 で、一の位を四捨五入します。 135417以上になると0の答えが返ってきます。 式は次の通りです。 =IF(P9<=135416,ROUND((P9-117501)*0.005,IF(135417<=P9<=149999,ROUND((P9-(P9*0.4+63334))*0.005,IF(150000<=P9<=299000,ROUND((P9-(P9*0.3+78334))*0.005,0))))))*10 どこが間違っているのでしょか?宜しくお願いします。

  • エクセル2002関数について

    関数について教えてください。=SUM(C3:H3)-SUM(I3:P3)の計算結果でマイナスになった場合、0と表示する方法を教えてください。IF関数だと思うのですが、組み合わせ方がわかりません。よろしくお願いします。

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

    エクセルの数式でIFを使って、下記のような複数の条件の時に、それぞれの計算結果を算出する式を作りましたが、単純に条件を並べただけで(IFとAND使用)、式が長くなってしまいます。これを短く出来る式の方法はありますでしょうか?(他の関数を使用する方法など)また、エクセルの関数の数式を応用編まで詳しく調べられるサイトをご存知でしたら教えてください。 (条件の例)R1への式入力 (1)A1がに"A"か"B"かを入力 (2)A1がAで、B2の値がC3以下の時、R1には8、C3より大きい場合は、B2-C3の値を表示 (3)A1がBで、B2の値がC3以下の時、R1には5、C3より大きい場合は、(B2-C3)/2の値を表示 といった条件を満たすものが作成したいです。 ちなみに私が作成した式は、 =IF(AND(A1=A,B2<=C3),8),IF(AND(A1=A,B2>C3),B2-C3,・・・・)って感じです。こんな方法しか無いでしょうか?

  • エクセル関数で教えてください!!

    エクセルで作成した表に計算式をいれたいのですが、 わからないので、ぜひ教えてください!! (内容) D15 のセルに A1×B2×C3×D3ーE3 という計算式が入っているとします。 D15の計算式の結果にまた条件をつけたいのです。その条件は 10万を超え10億未満のものは。上位4位以下の端数を四捨五入 の上、上位3位にとどめるというものです。 たぶんIF関数とROUND関数を併用するのでしょうが、実際式の 入れ方がわかりません。 もしご存知な方がいらっしゃればぜひ教えてください!! 宜しくお願いします☆

  • エクセル関数について教えて下さい。

    仕入先の下(C3)の関数 =IF($D3>MAX($J$14:$J$135),"",INDEX($B$14:$B$135,MATCH($D3,$J$14:$J$135,0),MATCH(C$2,$B$13:$B$13,0)))&IF($D3>MAX($L$14:$L$135),"",INDEX($B$14:$B$135,MATCH($D3,$L$14:$L$135,0),MATCH(C$2,$B$13:$B$13,0)))&IF($D3>MAX($N$14:$N$135),"",INDEX($B$14:$B$135,MATCH($D3,$N$14:$N$135,0),MATCH(C$2,$B$13:$B$13,0))) 該当の関数 =IF($B$3=F14,"該当","") 連番の関数 =IF(I14="","",COUNTIF($I$14:I14,"該当")) 仕入先の担当者や特徴をまとめた表を作りました。 B3のドロップダウンリストから抽出したい項目を選択しますと、C3~C10に表から該当する「仕入先名」が抽出されます。 ~困り事~ 抽出された後に、抽出された一覧(C3~C10)の中の1つを選択クリックすると表の該当箇所に移動(飛ぶ)する事は可能なのかどうか。 または選択された該当箇所が表の一番上に表示(移動)可能かどうか。 皆さんのお知恵を拝借出来れば幸いです。 宜しくお願い致します。

  • エクセル  IF関数  絶対値

    A列には正の数 B列には負の数が入っていて C列に IF A1>B1、正、負 としたいのですが 負の数を絶対値にする方法がわかりません。 例えば A1が3でB1が-4のときは 「3」「4」を比べて4の方が大きいので「負」と表示させたいです。 よろしくお願いします。