[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『合計値表示時、IF文で「0」なのに空白になる』(amaryllis)
1直がA1808.xlsxで、2直がB1 808.xlsxになっており、
1直と2直と合わせた合計値を出すためにC1808.xlsxがあります。
A1808.xlsxとB1808.xlsxは、A1セルに件数を数値入力しています。
C1808.xlsxは、
'C:\フォルダ名\[A1808.xlsx]件数'!A1+'C:\フォルダ名\[B1808. xlsx]件数'!A1
↑.
このように式になっており、毎月の初日に「データ」→「リンクの編集」で「1808」を「1809」に変えています。
※ 1808は18年8月を意味しています。
そこで、質問です。
A1808.xlsxとB1808.xlsxのA1セルの合計値が、
(1) 空白(入力されていない)なら、C1808.xlsxのA1セルを""にする。
(2) 「0」 (データが無い)なら、C1808.xlsxのA1セルを"0"にする。
(3) (1)(2)以外にデータがあって件数が入力されているなら、C1808.xlsxのA1セルに反映する。
↑
それをIF文で、
=IF('C:\フォルダ名\[A1808.xlsx]件数'!A1+'C:\フォルダ名\[B1808.xlsx]件数'!A1="","",IF('C:\フォルダ名\[A1808.xlsx]件数'!A1+'C:\フォルダ名\[B1808.xlsx]件数'!A1=0,0,'C:\フォルダ名\[A 1808.xlsx]件数'!A1+'C:\フォルダ名[B1808xlsx]件数'!A1))
にしてみましたが、(2)が「0」にならず、空白になっています。
「0」で表示させるには、どうしたらよいですか?
因みにそのファイル(C1808.xlsx)は、私自身だけ使うのではなく現場の職制(組長や工長や課長)たちがPCで見る為です(C1808.xlsxをネットワークの共有フォルダにアップ(更新)している)。
そのため、Excelのオプションで「ゼロ値のセルにゼロを表示する」チェックボックスをオフのままで、「0」を表示出来るでしょうか?
尚、結果を見るのは盆休み明け(8月20日)にします。それから、返事またはペストアンサーにしますので、承知ください。
あと、上記の中の「\」は半角の「¥」の事です。
< 使用 Excel:Excel2010、使用 OS:Windows7 >
合計値と仰ってるので0はデータが無いのではなく、合計値が0です。
データがないという状態は(1)のほうで評価してるように、ブランクセルということになるとおもいます。
そのうえで、合計するといっているので、それぞれのA1には本来数値がはいるのでしょうが、データがない(=ブランクセル)であるかを評価するために、文字列として結合して「""」であるかを見ているのでしょうけど、結合に「+」を使用されています。
この部分、文字列としてみるのであれば、CONCATENATE関数か「&」を使って結合すべきだとおもいます。
また、
IF 〜〜 =0,0
この部分、0のときに0を返せとなってますが、そのまま0を表示すればいいだけでしょう。
踏まえて、読みづらい&書きづらいので
[データA]:'C:\フォルダ名\[A1808.xlsx]件数'!A1 [データB]:'C:\フォルダ名\[B1808.xlsx]件数'!A1 として、
【パターン1】
ブックA、ブックB、それぞれのA1セルが[共に]がブランクであれば ブランクを表示 そうでなければ ブックA、ブックB、それぞれのA1セルを合計して表示
=IF([データA]&[データB]="","",SUM([データA],[データB]))
【パターン2】
ブックA、ブックB、それぞれのA1セルが[いずれかでも]ブランクであれば ブランクを表示 そうでなければ ブックA、ブックB、それぞれのA1セルを合計して表示
=IF(OR([データA]="",[データB]=""),"",SUM([データA],[データB]))
ちなみに、この掲示板は「ベストアンサー」という機能は(たぶん)ありません。
また、マルチポストも禁止はされていません。
ただ、別の掲示板にも投稿されているのであれば、その旨書いておいたほうが、変な軋轢を生まなくてよいのではないかとおもいます。(マルチポストしていないなら余計な一言失礼しました。)
(もこな2) 2018/08/11(土) 16:20
ブランク?
どういうことですか?
あと、文字列としておくのではなく、数値でやっています。
[データA]が「0」で[データB]が「5」であれば、合計は「5」になりますが、[データA]が「0」で[データB]も「0」であれば、合計は「0」となるが、それを表示するには、 【パターン1】や【パターン2】の式でないとダメでしょうか?
別の掲示板に投稿しておりませんので、マルチポストしていません。
確か、「ベストアンサー」という機能はなかったんですね。
失礼しました。
(amaryllis) 2018/08/11(土) 18:42
たとえば、新しいブックを立ち上げて、C1セルに「A1セルになにか」入力されていたら、「入力アリ」と表示させる数式を考えてみて下さい。なんとなく伝わりませんかね。
> [データA]が「0」で[データB]が「5」であれば、合計は「5」になりますが、[データA]が「0」で[データB]も「0」であれば、合計は「0」となるが、それを表示するには、【パターン1】や【パターン2】の式でないとダメでしょうか?
こちらは疑問点がわかりません。そのようになるようにしたと思いますが・・・
「」 「」 → どちらも 「」が返る
「」 「0」 → パターン1だと「0」、パターン2だと「」が返る
「0」 「5」 → どちらも 「5」が返る
「0」 「0」 → どちらも 「0」が返る
こうなりませんか?
(もこな2) 2018/08/11(土) 20:56
>「」 「0」 → パターン1だと「0」、パターン2だと「」が返る
↑
件数入力時のバータン、これはないです。
「」 「」 → どちらも 「」が返る
「0」 「5」 → どちらも 「5」が返る
「0」 「0」 → どちらも 「0」が返る
↑
この3つだけです。
(amaryllis) 2018/08/11(土) 21:33
セルが空白(ブランク)だと、0と空白どちらも通るから、その辺注意。 例えば、A1が全くの空白(ブランク)の場合、 =A1="" =A1=0 どちらもTRUEと返されます。 だから、空白と数値だけの比較だけだったら、 =if(and(ISNUMBER(A1),ISNUMBER(B1)),"どちらも数値","両方または片方が数値で無い") Isnumberを使っては・・・。
=if(and(ISNUMBER(A1),ISNUMBER(B1)),A1+B1,"") こんな感じになるのかな?
COUNT関数使ってもいいけど・・・。 =COUNT(A1:B1) 2以外だったら、どちらかまたは両方数値で無い。 (BJ) 2018/08/11(土) 21:51
>この3つだけです。
=IF(COUNT(A1,C1),SUM(A1,C1),"")
こんな感じでええのとちゃいますか。
>Excelのオプションで「ゼロ値のセルにゼロを表示する」チェックボックスをオフのままで、 >「0」を表示出来るでしょうか?
小数はないんやったら、表示形式のユーザー定義 0;-0;0 これでできまへんやろか? (よみびとしらず) 2018/08/12(日) 09:52
・[データA]と[データB]は数値しか入力しない ・[データA]と[データB]の片っぽだけ空白という状態は生じない
ということであれば、皆さんのCOUNT関数を使う案を拝借して、長くなってしまいますけど、
=IF(COUNT([データA],[データB]),IF(SUM([データA],[データB]), SUM([データA],[データB]),"0"),"")
という感じでは如何でしょうか。
一応、外側のIF関数で、[データA]と[データB]のデータ個数を確認し、0個じゃなければ(どちらも空白じゃなければ)内側のIF関数で[データA]と[データB]の合計を確認して、0じゃなければその合計値を、0であれば"0"という文字を表示させるようにしたうえで、そもそも外側のIF関数で偽となる、[データA]と[データB]のデータ個数が0個(いずれも空白)の場合は空白が返るようにした(ハズです)。
(もこな2) 2018/08/13(月) 20:33
おっしゃる通り、「0」を表示したかったのです。
従って、今日から仕事が始まり、会社で下記の式でやってみました。
=IF(COUNT([データA],[データB]),IF(SUM([データA],[データB]), SUM([データA],[データB]),"0"),"")
そうしたら「0」が表示されました。
ありがとうございます。
ところが、別の問題が出ました。
A1セルだけではなく、A2セルもあり、
A1が
=IF(COUNT([データA(A1セルの値)],[データB(A1セルの値)]),IF(SUM([データA(A1セルの値)],[データB](A1セルの値)), SUM([データA(A1セルの値)],[データB(A1セルの値)]),"0"),"")
A2が
=IF(COUNT([データA(A2セルの値)],[データB(A2セルの値)]),IF(SUM([データA(A2セルの値)],[データB](A2セルの値)), SUM([データA(A2セルの値)],[データB(A2セルの値)]),"0"),"")
でA3はA1+A2の合計を表示するのですが、A1が「0」A2も「0」の合計で「0」を出したいのに「""」になってしまう。
その場合は、どの式にしたら良いでしょうか?
(amaryllis) 2018/08/20(月) 13:17
どうもすみませんでした。
(amaryllis) 2018/08/20(月) 15:29
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.