• ベストアンサー

エクセル2003 MONTH関数で

お世話になります。 タイトルの件ですが 「A列」に 2008/12/18 と日付が入っていて「B列に」=MONTH(A)と入れれば 「B列」には「12」と出て来るのは承知しているのですが 実は「A列」の全部に日付が入っているワケではなく、上から下までの間に空白の「A列」も存在します。 で、疑問に思ったのは ここからなのですが 空白の「A列」のとなりの「B列」はなぜか「1」と表示されています。 これは なぜなのでしょうか。 お暇な時にでも 宜しくお願いします。

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

  • ベストアンサー
  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.3

NO1です。 >それを回避する方法はありますでしょうか? ⇒空白、0、文字列は空白にしてみました。  =IF(SUM(A1)=0,"",MONTH(A1))

ookami1969
質問者

お礼

再登場ありがとう御座います。 なるほど! それでもOKですか。 一応 両方試して重くならないほうを実施したいと思います。 再回答ありがとう御座いました。

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

その他の回答 (2)

  • hana-hana3
  • ベストアンサー率31% (4940/15541)
回答No.2

日付は1から始まるシリアル値になっています。 セルに「0」と入れて、セルの書式で日付に設定すると「1900/1/0」と表示されます。 =A1 とした場合、A1がブランクの場合は「0」が表示されます。 式で値を代入する場合、ブランクのセルは自動的に「0」として参照される事になるので、=MONTH(0) は 1になります。

ookami1969
質問者

お礼

早速のご回答ありがとう御座います。 なるほど、そういうことでしたか。 ちなみになのですが それを回避する方法はありますでしょうか? 自分では =IF(A="","",=MONTH(A)) ぐらいしか思いつかないのですが。。。

全文を見る
すると、全ての回答が全文表示されます。
  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.1

日付シリアル値は、通常1900/1/1(整数1)からですが、空白は「0」の為、日付としては1900/1/0と認識されます。 よって、「1」が返されるのだと思います。

ookami1969
質問者

お礼

早速のご回答ありがとう御座います。 なるほど、そういうことでしたか。 ちなみになのですが それを回避する方法はありますでしょうか? 自分では =IF(A="","",=MONTH(A)) ぐらいしか思いつかないのですが。。。

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

関連するQ&A

  • MONTH関数について

    Excel2007のMONTH関数について教えて下さい。 あるサイトに次のような作り方がありました A1に2012 B1に2 A2に =DATE(A1,B1,1) A3に =IF(MONTH(A$2+ROW(A1))=B$1,A2+1,"") A3をA32までオートフィル 3/1になると空白になる そこで質問です MONTH関数は、「月」の数字を求める関数ですね MONTH関数の括弧の中でROW(A1)を加えるとなぜ月替わりまで 同じ月になるのか 例えば2月の29日までは、「2」 3月1日になると「3」になるのか判りません。 その理由を教えて下さい。

  • EXCEL IF関数での日付の認識について

    よろしくお願いいたします。    A         B 1 2006/07/30    OK 2 2006/8/8      A列の日付が2006/7/31以前だったらB列にOK表示、 2006/8/1以降であったらB列に空白””というIF関数を使った数式をお教えください。 MONTH を使ったりしたのですが、年度単位(4月から翌年3月)の対象のため「MONTH(A1)<=7」と指定すると、2007/3/31も対象になってしまいました。

  • エクセルの関数

    お世話になります。 エクセルで列Aで行2以下に3/1・3/2・・・と日付を入れていきます。列Bに売った個数を入れていきます。 売れない日が多い為トビトビになります。(空白若しくは0を入力)列B行1に何日間売れていないか、日数を表示させたいのです。(前回売れてから3日売れていなければ3 売れれば0) 説明がわかりづらいと思いますが、宜しくお願い致します。

  • エクセル関数で・・・

    A列の1行目から45行目までに、”1”か”×”を入力するか、空白があります。 B列の1行目から45行目までに、様々な数値、若しくは空白が入ります。 この時、A列が”×”の行でB列が空白でないセルをカウントする数式を教えて下さい。   A  B 1 ×  20 2 × 3 1  30 4 ×  5 1  20 6 7 1  30 8 ×  10・・・・ こんな感じで、A列が”×”でB列が空白でないセルは『2』と導きたいのです。 分かりにくい説明で申し訳ありませんが、宜しくお願いいたします。

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

    A列       B列       日付or#EMPTY  日付or#EMPTY   のうちA列に日付が入っていてB列に日付が入っていないものを抽出する数式 A列       B列        日付or#EMPTY  日付or#EMPTY のうちA,Bともにひづけがはいっているものを抽出する数式 を教えて下さい。 よろしくお願いします。

  • EXCELの関数を教えてください。

    シート1 A列には1と2 B列には名前 C列には備考1(入力のあるセルもあればないセルもあり)が入力されたシートがあるとします。行は無限です。 シート2への表示を A列に1が入力されていた時のみC列の備考欄に入力されている文字をかえし、空白の場合は空白にしたいのです。 A列に2が入力されている場合は全部が空白です。 IFとISBANKの組み合わせみたいな感じなんですがよく分かりません。宜しくお願いします。

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

    エクセルの関数の質問です。 1日の案件数を求めるのは簡単ですが、同顧客が1日に何度も混在する場合の1日の顧客数の 求め方がわかりません。 種類の数え方の応用編でしょうか?どなたか教えてください! エクセルでsheet1のA2からA400までが顧客番号(文字列。空白含む。)、B2からB400までが日付(1日から31日)(1から31の数値。空白含む。)、sheet2のA2からA32までが1日から31日まで、のとき、sheet2のB2からB32にその日ごと(B2ならA2(1日))の顧客数を出す数式を教えてください。 ※sheet1の顧客番号、日付は、同じ顧客番号、同じ日付も含まれ、混在しています。 ついでにsheet2のC2からC32までに1日の案件数も出したいです! 例) sheet1 A  B 05 1日 05 1日 03 1日 01 1日 01 2日 01 2日 06 2日 05 2日 03 2日 sheet2 A   B   C 1日 3名  4件 2日 4名  5件 3日 0名  0件 4日 0名  0件 sheet2のBとCを数式にしたいです。

  • エクセル関数

    参照先のセルが空白の場合に値が入力されているセルまで列を遡って参照したいのですが、そのような時はどういった関数を使えば可能でしょうか? 具体的には添付画像のようなケースです。 A列には日付、B列にはニューヨークダウの終値が入力されています。 C列では当日終値の前営業日に対する変動率を求めます。 当日のB列が空白の場合はC列にも空白を返します。 前日の終値が空白のC3048とC3057にエラーが出ます。 C3048ではB3048のB3046に対する変動率、 C3057ではB3057のB3052に対する変動率 を求めます。 このケースではC列にどのような関数式を使えばよろしいでしょうか。 質問の文章が分かりづらくて申し訳ありませんが、よろしくお願いいたします。

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

    Sheet1  |**********| Sheet2       A       B 1|2005/01/20|ABC| 2|2005/03/15|DEF| 3|2005/04/20|XXX| わかりずらくてごめんなさい。エクセル初心者です。 関数のことで質問させてください。 Sheet2の「B」の列に「ABC」の語を含んでいた場合、Sheet1の「********」のセルに「A」の列の日付に半年をプラスした日付を表示させたいのです。 もし含んでいない場合は、表示しなくてもいいのですが、この場合どのように数式を作っていいのかわかりません。 ちなみに自分で作った数式は =if(sheet2!B1=”ABC”,date(year(sheet2!A1)+0,month(sheet2!A1)+6,day(sheet2!A1)+0),””)でした。 しかし、これでは「B2」や「B3」に「ABC」が入った場合には適用されません。 頭が痛くなってきたので質問させていただくことにしました。 よろしくお願いいたします。

  • エクセルの関数

    エクセルの関数でこんな事が出来るものがあるのでしょうか。 ”A1”に名称を入力すると”C”の列で同一名称のものを探し、隣の”D”列に入力済の住所を”A2”(もしく”はB2”)にコピーする。 A1・A2・B2は表になっています。 C・D列は表外で、印刷範囲外です。 また、Cに該当項目が無い場合は空白にすることは可能でしょうか。

日記帳データの復帰方法とは?
このQ&Aのポイント
  • ズバリ日記帳を使用している方が、突然データが消えてしまった場合、復元する方法を教えてください。
  • ズバリ日記帳を使用していて、ある日突然データが全く新しいものになってしまった場合、バックアップファイルの丸ごとコピーで復元できるのか質問です。
  • ズバリ日記帳を使用していて、データが消えてしまった場合、どのような方法で復元すればいいのか教えてください。
回答を見る

専門家に質問してみよう