エクセルにおいて、スペースを挿まない""と、スペースを挿む" "の違いを教えてください。
if関数で条件が真の場合に空欄""(←スペース無し)を返して、その空欄のセルと別のセル(数字が入っている、例えば1)を加算(セル+セルであり、sumは使わない)するように計算式を組んでも、空欄のセル(ifのセル)を0と認識してくれず、その結果#VALUE!と出てしまいます。
一方、""にスペースを挿んで" "とすると、数値と認識して、加算結果は1と表示されます。
因みに、sum関数で問題のセル(ifのセル)と別のセル(例えば1)を計算すると、1という結果が返ってきます。
スペース無し("")とスペースあり(" ")の違いって一体何なのでしょうか?
また、なぜセル+セルでは#VALUE!になり、sumでは#VALUE!にならないのでしょうか?
宜しくお願いします。
No.1
- 回答日時:
""はnullといい、何のデータも含まれていないもので、データ長ゼロのものです。
それに対し、" "は1文字の空白を示し、データ長は1文字となります。セル+セルは数字項目に対して加算が許されるため、" "(スペース)は文字項目のため「値エラー」となります。一方、""(Null)はデータそのものが無いことになり、エラーとはならず、加算の対象にもなりません。一方、=SUMは数値項目のみ加算対象とするため、文字項目(スペースを含め、A,B,C,あ,い,うなど)は無視します。
No.2
- 回答日時:
""(スペースなし)は「ヌル」といい、数字(0を含む)・文字等何も入っていない状態です。
" "(スペースあり)の方は、スペースは一つの文字として扱われるので、数字として計算はできません。
恐らく、0という数字を表示したくないのだと思いますが、
書式設定で「ユーザー定義」を選び、
0;-0;""
と入力してください。
;の前(先頭)はプラスのときの表記の仕方
;の間(中間)はマイナスのときの表記の仕方
;の後(末尾)は0のときの表記の仕方です
このとき0を入力しても何も表示されませんが、セルに0は入っています。
いかがでしょうか?
No.4ベストアンサー
- 回答日時:
>""にスペースを挿んで" "とすると、数値と認識して、加算結果は1と表示されます。
たぶん、これは勘違いでしょう。
両方とも#VALUEになるはずです。
再度、確認してみませう。
さて、本題。
>スペース無し("")とスペースあり(" ")の違いは?
"" は、長さ0(ゼロ)の文字列(【Null(ヌル)】ではありません)
" "は、スペース1文字のこと
要するに、●両方とも文字列●ということです。
これを踏まえて、
A1の値が ""又は" "で、B1の値が数値の場合
=A1+B1
"文字列"と数値を足すことになりエラー
=SUM(A1:B1)
SUMは合計を計算する小さなプログラムなので、
そこら辺りを考慮して計算するからエラーにならない
これはSUMのヘルプに詳しく書いてありますので一読することをお奨めします。
ただ、ヘルプには、
引数が配列またはセル範囲の参照である場合は、
「空白セル、論理値、文字列、エラー値は無視されます」と書いてありますが
エラー値 は無視されず、結果はエラーになります。
また、ヘルプでいう、空白セルとは未入力セルのことです。
以上。
ご回答ありがとうございます。
""と" "は確かに両方とも#VALUEになりました。私の間違いでした、申し訳ありません。
ifの条件部分における""と" "の違い(片方は#VALUE)、ifで返される結果における""と" "の違い(両方とも#VALUE)、""とnullの違い(前者は文字列)、加算演算とsum関数の違い 等が理解できました。
回答をくださった皆様、どうもありがとうございました。
No.5
- 回答日時:
No4 さんの回答に書いてある通りと思いますが、一部補足します
A1に文字で1と入力
B1に文字で2と入力
A1+B1=3
SUM(A1:B1)=2
四則演算の場合文字でも数値と認識できるものは数値に置き換えて計算します(TRUE,FALSE等も)
一方SUM関数は文字を無視して計算します
No.6
- 回答日時:
NO.4の方がほとんど回答されていますが、少しだけ補足させていただきます。
EXCELの関数が融通を利かしたりするので混同するのですが、EXCELにおいてはNullと""に違いがあります。(IT用語辞典とかでは同じ扱い)
EXCELにおいてNullは数値計算の場合0と同等に扱われますが、""は文字列なので意味が変わります。
また下記のような違いもあります。
A1が未入力(Null)の場合
A2=IF(ISBLANK(A1),"",A1)・・・(真)
A2=IF(A1="","",A1)・・・・・・・・・(真)
上記の数式は両方"真"となりA2には""(長さ0の文字列)がセットされます。
ところが、下記の式では結果が分かれます。
A3=IF(ISBLANK(A2),"○","×")・・・(偽)="×"
A3=IF(A2="","○","×")・・・・・・・・・(真)="○"
""は長さ0の文字列が入力されているとみなされるので、ISBLANKでは"真"になりません。
IT用語辞典
ヌル(Null)
http://e-words.jp/w/E3838CE383AB.html
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelで同じセルに箇条書きをし...
-
A1セルに入力したら、入力時間...
-
参照先セルに値が入っていない...
-
エクセルで既に入力してある文...
-
値を入力後、自動的にアクティ...
-
Excel:文字と数字の組合せ、次...
-
IF関数で0より大きい数値が入力...
-
エクセルの数式がかぶって、選...
-
入力したところまでを自動的に...
-
エクセルで、例えば「0402」な...
-
睡眠時間を計算する関数
-
空白でないセルの値を返す方法...
-
【Excel】セル内の時間帯が特定...
-
エクセルで数字10が1に変わる。...
-
百万単位
-
Excel で空欄にも単位 \\や円 ...
-
エクセル:コメントのようなも...
-
エクセルで計算式の入力されて...
-
マイナス同士の前年比
-
EXCELのセル上のURLを...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
A1セルに入力したら、入力時間...
-
Excelで同じセルに箇条書きをし...
-
参照先セルに値が入っていない...
-
IF関数で0より大きい数値が入力...
-
エクセルで既に入力してある文...
-
空白でないセルの値を返す方法...
-
Excelでセルに入力されたカラー...
-
入力したところまでを自動的に...
-
Excel:文字と数字の組合せ、次...
-
値を入力後、自動的にアクティ...
-
【Excel】セル内の時間帯が特定...
-
yyyy/mm/ddからyyyy/mmへの変換
-
エクセル セルに文字を入力した...
-
エクセルの数式がかぶって、選...
-
excel 関数にて文字を0として認...
-
エクセルで10分ごとの時刻の...
-
エクセルで時間の判定をしてい...
-
エクセルで複数の条件で掛け算...
-
Excel で空欄にも単位 \\や円 ...
-
マイナス同士の前年比
おすすめ情報