- 締切済み
エクセルの表から正の数、負の数を抜き出す方法
エクセル2003にある数字の羅列を正の数と負の数とに分けたいと思っていますが、 うまくできません。関数などご存じでしたら教えてください。 例 10000 -20000 30000 40000 50000 -60000 -70000 ↓↓↓このようになるようにしたいと考えています↓↓↓↓↓↓ A B C 10000 10000 -20000 -20000 30000 30000 40000 40000 50000 50000 -60000 -60000 -70000 -70000 できるならばA欄に数字を入れたら正の数ならB欄に数字が表示され、 負の数ならC欄に表示されるようにしたいと考えています。 検索したのですがキーワードが違うのか思ったものが探せませんでした。 ご存じの方がいらっしゃいましたら教えてください。 よろしくお願いいたします。
- cloches2012
- お礼率12% (1/8)
- Excel(エクセル)
- 回答数5
- ありがとう数1
- みんなの回答 (5)
- 専門家の回答
みんなの回答
- MarcoRossiItaly
- ベストアンサー率40% (454/1128)
No.4 です。少し訂正させてください。 符号で分類するには SIGN 関数が使えると言いましたが、「符号そのものを数式中で使いたい」という目的でない場合は、次式でも十分でした。どちらかというと、こうしたほうが簡明で、良いですね。すみません。 B2 =0+(a2>0) C2 =0+(a2=0) D2 =0+(a2<0) E2 =sum(b2:c2) あるいは =0+(sum(b2:c2)=1) あるいは =0+(a2>=0) 上式では、「ゼロ以上」のフラグとして、E2 セルを追加してみました。複数の項目(列)への該当の有無を見るには、フラグ同士を合計すればいいのですね。「>=」は、「≧」の意味です。同様にして、「ゼロ以外」や「ゼロ以下」を求めることも可能ですね。「<>」と書くと、「≠」の意味になります。「<=」は「≦」です(「=<」は誤り)。 まあ今回の場合、正、ゼロ、負の 3 種類だけなので、例えば負だけを除きたいという場合は、オートフィルタで負の列が 0 である行のみに絞り込めば、目的は達成されるんですけれどね。 もっとたくさんの条件と列がある場合には、E2 のような計算もできるという補足情報です。SUM 関数で合計した結果が 2 以上になることもある場合は、E2 の 3 式のうち 2 番目のタイプを使って「=2」と書くと、合計が 2 未満なら 0、2 に等しいなら 1 を算出してくれます。1 番目のタイプでは 2 などの合計値がそのまま表示されるので、それはそれで絞り込みに使えますね。 A 列の値をそのまま書き写すには、No.4 でも言ったとおり、元の値とフラグを掛け算します。 オートフィルタで絞り込んだ状態の表を保存するには、コピーして他のシートに貼り付けるなどすればいいですね。
- MarcoRossiItaly
- ベストアンサー率40% (454/1128)
正負に「分ける」というのが「列を分ける」という意味なのでしたら、関数などを組み合わせた何かしらの 1 種類の数式だけを考えていれば解決するということではないですよね。横方向の位置が問題になるわけです。 列を分けた後でどのような分析を考えていらっしゃるのか分かりませんが、列を分けることなく、直に A 列のデータを使って分析するということも、今後、検討してみるとよいかもしれません。数値の符号だけの問題なら、余計な操作をかませずに、比較的簡単な数式のみで処理できることも多いからです。 Excel には、数値の符号に応じた値(1、0、-1)を返す SIGN 関数というものが用意されています。A 列に既存であるデータをわざわざ他の列に丸写しするというのも、ちょっとダブっているようなムダな感じもするので、符号に従って SIGN 関数により A 列の値を分類するフラグを、B ~ D 列に算出する数式を作ってみました。 B2 =0+(sign($A2)=1) C2 =0+(sign($A2)=0) D2 =0+(sign($A2)=-1) このフラグにより、オートフィルタにおいて、正、負、ゼロの行のみに絞り込み表示するといったこともできるでしょう。どうしても他の列に写す必要がある場合は、A 列の値と 0 や 1 を掛け算すればいいだけですね。 横方向の位置というものも関数の組み合わせで表現することもできなくはないのですが、正、負、ゼロの 3 種類だけですし、上のように具体的な値で指定したほうがかえって分かりやすいでしょう。
- keithin
- ベストアンサー率66% (5278/7940)
空白を仕分ける必要はありません。 B1: =IF(A1>0,A1,"") 以下コピー C1: =IF(A1<0,A1,"") 以下コピー。
- kagakusuki
- ベストアンサー率51% (2610/5101)
御質問文の例にある様に、A列に入力したのと同じ行に表示させるのでしたら、回答No.1様の方法が正解です。 又、もしも、 A列 B列 C列 1行目 10000 10000 -20000 2行目 -20000 30000 -60000 3行目 30000 40000 -70000 4行目 40000 50000 5行目 50000 6行目 -60000 7行目 -70000 の様に、間を詰めて表示させたい場合には、まず、B1セルに次の関数を入力して下さい。 =IF(ROWS($1:1)>COUNTIF($A:$A,">0"),"",SMALL($A:$A,COUNTIF($A:$A,"<=0")+ROWS($1:1))) 次に、C1セルに次の関数を入力して下さい。 =IF(ROWS($1:1)>COUNTIF($A:$A,"<0"),"",LARGE($A:$A,COUNTIF($A:$A,">=0")+ROWS($1:1))) そして、B1~C1の範囲をコピーして、同じ列範囲の2行目以下に貼り付けて下さい。
- t-yamada_2
- ベストアンサー率40% (587/1460)
B1に =IF(A1="","",IF(A1>0,A1,"")) C1に =IF(A1="","",IF(A1<0,A1,"")) あとは下に式をコピーです。
関連するQ&A
- エクセルでの正の数、負の数の表示について
エクセルの操作について質問です。 例えばA1のセルにB1-C1の値を表示したいとします。 この時値が正の数のときは+○、負の数のときは-○(これは普通に表示される)0のときは±0と表示したいのです。 この説明で分かって頂けますでしょうか。 セルの書式設定の表示方法でもいいし、IF関数などでもいいですよろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- Excelで正、負の抽出計算
お世話になります。 教えてください。 Excelで表を作成しています。 下記表から、正の数字と負の数字を抽出する関数を調べているのですが、どなたかお教えください。 A B C D 1 項目 数量 数字 合計 2 ●● 2 -200 -400 3 △△ 3 300 600 4 ●▲ 3 -100 -300 5 正の合計 600(ここの関数) 6 負の合計 -700(ここも) 7 全合計 -100(sum(D1:D4)) よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- Excel 負の数のマイナス部分を考えずに数字だけ足したい
A1とB1にC1に数字が入力されています。 C1は正の数、負の数どちらが入るかわかりません。 正の数が入った場合は計算をせずに(もしくは0と考えて計算)、 負の数が入った場合にマイナスを取った数字(例えばー1だったら1、ー3だったら3)を使って計算したいです。 D1に表示させたい内容の基本はA1-B1+C1(C1は負の数の場合のマイナスを取った数字で計算) 正の数の場合無視する(もしくは0と考える)、 負の数の場合マイナスを取って計算するにはどう入力すればよろしいでしょうか。 おわかりになる方がいらっしゃいましたら、宜しくお願いしますm(__)m
- ベストアンサー
- オフィス系ソフト
- Excel 2007の関数ですが、数値範囲の正の数、又は、負の数のみを
Excel 2007の関数ですが、数値範囲の正の数、又は、負の数のみを合計する関数がわかりません。 調べる方法を教えてください。
- 締切済み
- Windows系OS
- エクセルで、正から負にする関数ありませんか?
エクセルの関数で、正の数値を負にするものはないでしょうか? 12345 となっているのを、関数を使って、-12345と 表示させたいのです。 お願いします。
- 締切済み
- オフィス系ソフト
- SUM結果の数字を逆(正→負/負→正)に変えて表示させたい
エクセル2000の環境です。 下記のような意向を組んだ表を作成したいのですが…。 ------------- A l B l C l ------------- 10 l 10 l 20 l← =SUM(A1:B1) を入れています ------------- 1 l -9 l -8 l← 〃 ------------- 100 l 20 l 120 l ← 〃 ------------- 合計 l 132 l← =SUM(C1:C3)を入れています ------------- 【問い】 1)合計の数字が正の場合、負に変えて、なおかつ朱書きで表示させたい ※上記の場合を例にしますと、-132(朱書き)としたい。 2)1)と同様、合計結果が負の場合、正に変えて、なおかつカラーは自動(黒)で表示させたい 以上、お手すきの方がいらっしゃいましたら、どうぞ宜しくお願いいたします。
- ベストアンサー
- オフィス系ソフト
- エクセル関数で 負の数を正の数の表示に・・・
いつもお世話になります。 エクセルを使って、数値の表示の仕方で引っかかり仕事が進まないので 教えていただきたいのですが、よろしくお願いします。 Book A 内の セルA1 に -1000(負の数)という表示が入っているのを、 Book B 内の セルB1 に 1000 という表示で表したいのですが、 Book BのセルB1に入れる数式は どのようにしたらよろしいでしょうか? 簡単な単純な事なのでしょうが、分からなくて 困ってしまっています。 どうかよろしくお願いします。
- ベストアンサー
- Windows系OS
- エクセルで、正の数のみ足し算するには?
無知ですみません。エクセルで集計するときに、正の数(+)のみ足して負の数(-)は足さないようにする関数があれば教えてください。宜しくお願いいたします。
- ベストアンサー
- オフィス系ソフト
補足
まとめコメントですみません。 回答No.1~4の方々、ありがとうございます。アドバイスいただいた方法を、下手なりにひとつひとつ自分で確認しているところですので、返答はいましばらくお待ちください。