• ベストアンサー

関数を使って数字を検査、表示させたい点で質問があります。

わからない点がありますのでよろしくお願い申し上げます。 ■自分がしたい内容 A列にある数字を、B列にある条件で検査した結果を 表示させたいです。 ■B列に表示させたいこと。 プラス数字の場合は表示しない。 ゼロの場合はそのまま0と表示させたい。 ゼロ未満-50未満の場合はそのままの数字を表示。 -50以上大きい(-100など)場合は全て-50と表示させたい。 空白の場合はブランクにしたい。 ■つまり次のような結果がでるような式を作りたいです。 A列  B列 100 50 0  0 -20 -20 -30 -30 -50 -50 -100 -50 ■自分が作った式は次の通りです。 =IF(A1<=-50,-50,IF(0<>-50,A1,"")) しかし結果は次のようになってしまいます。 A列  B列 100 100 50 50 0 0 -20 -20 -30 -30 -50 -50 -100 -50       0 ※プラス数字の場合、表示しない方法がわかりません。 ※空白の場合、現状ですと「0」が表示されるのでこれを  ブランクにしたいです。 どこを直せばよいのかご指導お願い申し上げます。

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

  • ベストアンサー
  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.2

こんばんは! 横からお邪魔します。 B1セルに =IF(OR(A1="",A1>0),"",IF(A1<-50,-50,A1)) としてオートフィルで下へコピーではどうでしょうか? どうも失礼しました。m(__)m

naniwaaki
質問者

お礼

早々のご回答ありがとうございます。 ORを使ったことがないので大変勉強になりました。 これで一発解決できました。 おかげさまでサクサク動いております。 本当にありがとうございました。

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

その他の回答 (1)

  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.1

※プラス数字の場合、表示しない方法がわかりません。 ※空白の場合、現状ですと「0」が表示されるのでこれを  ブランクにしたいです。 =IF(A1="","",IF(A1>0,"",A1)) こんな感じになりますが。 質問をもう少し省略すると  負の場合のみ表示ですよね =IF(A1<0,A1,"") でも大丈夫かと。

naniwaaki
質問者

お礼

先ほどはご回答ありがとうございました。 -50以上の場合の問題も他の方からのご回答で解決できました。 hallo-2007さんのいち早いご回答に感謝申し上げます。 これからもどうぞよろしくお願い申し上げます。

naniwaaki
質問者

補足

早々のお返事ありがとうございます。 確かにプラスの場合の表示とブランクの問題が解決できました。 ありがとうございます。 しかし、今度は、-50以上(-100など)の場合はすべて-50と表示したい点が 解決できておりませんのでこの点を加えていただくと大変たすかります。 どうぞよろしくお願い申し上げます。

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

関連するQ&A

  • VLOOKUP操作で分からない点があります。

    よろしくお願いいたします。 A列に1か2を入力するとその結果をB列に表示させたいです。 そこでA1に1と入力すると「晴れ」2を入力すると「曇り」と表示させ、さらにブランクならば空白にしなさい。という関数を次のとおり作りました。 =IF(A1=1,"晴れ",IF(2,"曇り","")) この場合、1か2を入力すると正しく結果を表示してくれますが、 ブランクにもかかわらず自動的に「曇り」が表示されてしまいます。 また、3の数字をいれても「曇り」とj表示されます。 上記式のどこを直せばブランクのときにブランクになるでしょうか? よろしくお願い申し上げます。

  • VLOOKUP関数等で結果がエラーの場合の表示について

    こんばんは VLOOKUP,IF関数で結果がエラーの場合の表示についてお伺いします。 まず、VLOOKUPの場合 検索する値が検索範囲に無い場合、結果はエラーが表示されますが、この場合エラー表示では無く、空白で表示させたいのですが、この場合の式はどのよすればよいでしょうか? 2点目、A列とB列を掛け算してC列に結果を表示させたい。しかし、A列に「未定」と文字列が入力してある場合、B列に整数が入力してあっても、C列にはエラーが表示されます。この場合、C列を空白で表示させたいのですが、この場合の式はどのよすればよいでしょうか? よろしくお願いします

  • ExcelのIF関数で

    IF関数で質問なんですが、複数条件(アンケートのような物)で、例えばA1:B100の中で、A列が「5」で且つB列が「3」の物を数えなさい。という式で抽出結果を一覧表にしたいのですが、抽出結果が0の場合「0」が表示されてしまい、とても見苦しくなってしまいます。0の場合は空白にしたいのですが悩んだ結果、 =IF(SUM(IF(A1:A100=5,IF(B1:B100=3,1,0),0))=0," ", (SUM(IF(A3:A100=5,IF(B1:B100=3,1,0),0)))) のような長い式になってしまいました。他に良い方法かあるでしょうか? ご教授ください。

  • Excel 関数で上から順に数字を整列させる

    Excelで、下記表(例)に入力された数字を上から順に関数を用いて隣のB列に整列させたいです。 ・例 A1:A60の表があります。 ※以下A列に入力された数字とします 1 空白 2 20 3 空白 4 15 5 25 ・(省略、この間空白と考えて下さい) ・ ・ 59 10 60 空白 上記表(例)は、A2に20,A4に15,A5に25,A59に10それ以外は空白を表します。 上記表のセル内数字は全て手入力とします。 全てのセルが空白の場合もあります。 B列はB1:B5の5行です。 この入力された数字を関数を用いて、B列に上から順にB1に20,B2に15,B3に25,B4に10,B5は空白となるように整列させたいです。 B列セル結果は他シートに参照されますのでセルはロックを掛けています。 上記のことからデータの並べ替えも使えませんし昇降順でもありません。 上から順に整列させた数字を、B1:B5の5行内で上位5まで表示させます。 A列の行数が多いのでif関数も使えません。 なお、上記質問内に不明な点がありましたら補足させて頂きます。 以上、宜しくお願いします。

  • Excelの関数で困っています

    お願いします。 求めたい式は A列が空白でB列も空白だったら"空白" A列又はB列のどちらかでも文字が入っていたら"入ってる" A列とB列の両方文字が入っている場合は"両方" と表示させたいと思っております。 IF関数を試みましたが、上手くいきません。 できれば全てを1行で表示できるようにしたいのですが、 無理ならば、2行又は3行になっても構いません。 関数の得意な皆様、どうぞよろしくお願い致します。

  • SUM関数の結果が0に表示されてしまうエラーです。

    わからない点がありますので、どうぞよろしくお願い申し上げます。 A列  B列 -100 -50 -150 -50      0 A列は数字を直接入力しました。 B列1行目  =IF(A1<=-50,"-50","") B列2行目  =IF(A2<=-50,"-50","") つまり、「A列の数字が-50と同じか、小さい場合は-50を表示せよ」です。 B列3行目 =SUM(B1:B2) 計算結果は、-100になるはずですが、0が表示されてしまいます。 ちなみにセルの書式設定でしらべてみると表示形式は「標準」でした。 なぜゼロになるのかわかりません。 解決方法をお教えいただきたくお願い申し上げます。

  • エクセル:式 数字大小範囲

    A列に数字かあるいは何もデータが入っていないものとします。 数字の1か2のときB列に〇を表示する式は次でいいらしいのですが、 =IF((3>A1)*AND(A1>0),"〇","") 他の表現はありますか。

  • 関数について教えてください。

    A列に場所、B列に氷の厚さ、C列が判定結果入力の列です。 (1)氷の厚さが7cm以上は可能、(2)3cm以上7cm未満の場合は一部可能、(3)3cm未満のときは不可と表示しなさいという問題を解いています。 条件を全てまとめると、どうつなげたらいいのかわかりません。 1つずつだとこんな感じになるのかな?と思っています。 (1)=IF(B3>=7,"可能") (2)=IF(AND(B3<=7,B3>3),"一部可能","不可") (3)=IF(B3<3,"不可") (1)と(2)をつなげたらできるのでは?と思っているのですが、式が正しくないと表示されどこが間違いなのかもわかりません。 また少しむずかしい問題をと思い、今のテキストを購入したのですが解答がついていませんでした。 こんな問題に良いテキストをご存知でしたら、教えていただけないでしょうか? どうぞよろしくお願いします。

  • [EXCEL]AVERAGEでブランクを飛ばした計算式

    みなさん、こんばんは。 [EXCEL]AVERAGEでブランクを飛ばした計算式を教えてください。 よろしくお願いします。 まず A列1~13に 10 20 30 40 50 60 (空白/ブランク) 10 20 30 40 50 60 と数字が入っています。 B列6行に =IF(A6="","",AVERAGE(A1:A6))と式を入れ、この式をB列13まで延ばすと、 B列6~13は 35 38 36 34 32 30 35 となります。 私の希望は7行目のブランクを無視して数字があるところだけを指定範囲(今回は範囲は6行)計算したいのです。 結果としてB列6~13は 35 35 35 35 35 35 35 となるのが希望です。 B列6、13は、連続していますので、そのままの平均なので35ですが、 他はブランクがありますので、そのブランク1つ分を計算範囲に入れず、 範囲先頭部分をひとつ増やして計算させたいのです。 B列8ならA7を除く、A2~A6,A8の平均(AVERAGE(A2:A6,A8)) B列10ならA7を除く、A4~A6,A8~A10の平均(AVERAGE(A4:A6,A8:A10)) という感じにです。 よろしくお願いします。

  • 2つの数字の変化を読み取るエクセル関数はありますか

    エクセルの関数についてです。2つの数字の変化を A列  B列 100    1 103    1 109    1 120    1 105    -1 102    -1 120    1 123    -1 ・    ・ ・    ・ ・    ・ となっている時に,以下の2つの条件を満たす式を作ることはできますでしょうか。 (1)B列の数字を3行ずつ見てゆく。3行目までずっと1が続き,数字が変わらなければ(-1が出なければ)3行目のA列の数値(109)を取り出す (2)数字を取り出してから次の3行目までの間でB列の数字が変わったとき(1→-1,-1→1)には,変わった行のA列の数値(105)を取り出す。次は,B7なので120,次はB8なので123…と 数字を取り出す度にリセットして,新たに3行の中から新しい数字を取り出すようにしたいのです。 やはりマクロを組まないといけないのでしょうか? 分かりにくかったら申し訳ございません…

このQ&Aのポイント
  • 純正品ではないインクカートリッジを購入しましたが、使用することができない状況に困っています。
  • 購入したDCP-J988Nの純正品でないインクカートリッジを使用すると、動作しない問題が発生しています。
  • インクカートリッジを純正品以外のものに交換したところ、印刷ができない状態になりました。解決方法を教えてください。
回答を見る

専門家に質問してみよう