• ベストアンサー

日付から年月取り出し

A1に平成21年7月1日とあります。 A2に日にちを除いた平成21年7月だけを取り出すにはどのようにすればよいですか?DATE関数ではできませんよね? しかもMONTH+1のようにして平成21年8月と表したいです。 MONTHだけでは13月になってしまうので。なにか良い方法はありませんか?

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

  • ベストアンサー
  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.8

最初のご質問とかなり内容が変わりましたね。初めからやろうとすることを示してほしかったですね。 C1セルへの入力の式は次のようにして下方にオートフィルドラッグします。 セルの表示形式で平成21年8月のようにすればよいでしょう。 =DATE(YEAR(開始設定!$B$106),MONTH(開始設定!$B$106)+ROW(A1)-1,DAY(開始設定!$B$106)) D1セルへの入力の式は次のようにして下方にオートフィルドラッグします。 =IF(D1="","",SUMPRODUCT((YEAR(A$1:A$500)=YEAR(C1))*(MONTH(A$1:A$500)=MONTH(C1))*B$1:B$500))

motty7777
質問者

お礼

*(MONTH(A$1:A$500)=MONTH(C1))*B$1:B$500))ですべて解決しました! 盲点でした…。もう少し頭を柔軟にしていれば皆さんに迷惑おかけすることがなかったんですが…。 大変ありがとうございました!

その他の回答 (7)

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

No.6です! No.5の数式に間違いがあるみたいです。 D3セルの数式を =IF(OR(A3="",MONTH(A3)=MONTH(A2)),"",SUMPRODUCT(($A$2:$A$105>=$B$106)*($A$2:$A$105<=EOMONTH(A3,1)),$B$2:$B$105)) に訂正してみてください。 親の仇のように「これでもかっ!」というくらい顔を出してしまいまして、 ごめんなさい。m(__)m

motty7777
質問者

お礼

ありがとうございました! またよろしくお願いします!

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

No.1・2・5です! またまた・・・的外れみたいだったようですねぇ~? もう一度画像をアップしてみます。 私自身、C列の意味が少しわからないので、とりあえず、A列の1ヶ月後にしています。 C2セルの数式は =EDATE(A2,1) としてオートフィルで下へコピー (セルの表示形式は ggge"年"m"月" です) そして、 表のD2セルに =IF(C2="","",SUMPRODUCT(($A$2:$A$105>=$B$106)*($C$2:$C$105<=EOMONTH(C2,0)),$B$2:$B$105)) (これはD2セル限定の数式になります。) D3セルに =IF(OR(C3="",MONTH(C3)=MONTH(C2)),"",SUMPRODUCT(($A$2:$A$105>=$B$106)*($C$2:$C$105<=EOMONTH(C3,0)),$B$2:$B$105)) として、D3セルの数式をオートフィルで下にコピーすると 画像のような感じになります。 結局、平成21年8月1日からC列の月末までの合計が表示される格好です。 これで希望に近い形になったでしょうか? これでも違っていたらごめんなさいね。m(__)m

motty7777
質問者

お礼

大変参考になりました。また是非ともよろしくお願いします!

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

こんにちは! No.1・2です。 質問の内容を取り違えていたようですみません。 結局その月の合計を出したいってことですかね? もしそうであれば、 ↓の画像のD2セルに =SUMPRODUCT(($A$2:$A$500>=DATE(YEAR(C2),MONTH(C2),1))*($A$2:$A$500<=EOMONTH(DATE(YEAR(C2),MONTH(C2),1),0)),$B$2:$B$500) という数式を入れてオートフィルで下にコピーしています。 (エラー処理はしていません) ただ、ひとつ分からないのが、 >C2はMONTH+2です。 という点です。 開始設定月日が8月1日であれば、 MONTH+2 =10 になると思うのですが・・・ それはさておいて、 先ほどの数式はC列に表示された月の合計を出すようにしていますので、 同じ月がある場合、数値が重複する場合もあります。 尚、今回もEOMONTH関数を使用していますので Excel2003以前のバージョンであれば、たぶん「分析ツール」にチェックを入れる必要があると思います。 以上、参考になれば幸いですが、 今回も的外れならごめんなさいね。 どうも何度も失礼しました。m(__)m

motty7777
質問者

お礼

>C2はMONTH+2です。  MONTH+1の間違えです。 なお、合計は毎月です。平成21年9月分の合計が複数あるのはまずいです。 他に方法はありませんか?

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.4

単に同じ年月をA2に表示させるのでしたらA2セルに=A1と入力して右クリックし「セルの書式設定」で「表示形式」のタブから「ユーザー定義」でggge"年"m"月"と入力すればよいでしょう。 関数を使って表示させるのでしたらA2セルに次の式を入力します。 =TEXT(A1,"ggge年m月") MONTH+1の場合でしたらA2セルに次の式を入力します。 =TEXT(DATE(YEAR(A1),MONTH(A1)+1,DAY(A1)),"ggge年m月") TEXT関数を使った場合には結果は文字列でしかありません。計算などに使うことを考えるのでしたらMONTH+1の場合ではA2セルに次の式を入力し、表示形式でggge"年"m"月"とすればよいでしょう。 =DATE(YEAR(A1),MONTH(A1)+1,DAY(A1)) MONTH+1の場合で12月にプラス1となっても何らの問題なく処理できます。

motty7777
質問者

お礼

返事遅れました。ありがとうございます。No1に補足説明していますので是非とも読んで知恵を貸してください!

noname#204879
noname#204879
回答No.3

=TEXT(A1+31,"ggge年m月")

motty7777
質問者

お礼

返事遅れました。ありがとうございます。No1に補足説明していますので是非とも読んで知恵を貸してください!

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

No.1です! たびたびごめんなさい。 投稿したあともう一度質問を読み返していて気づいたのですが、 A2セルに1ヶ月後を平成○○年△月だけ表示したいということですかね? もしそうであれば、 A2セルに =EDATE(A1,1) として表示形式は前回同様にしてみてください。 尚、当方使用のExcel2003ではEDATE関数を使用するに当たって、 メニュー → ツール → アドイン → 「分析ツール」にチェックを入れておく必要があります。 Excel2007の場合はそれが必要かどうかは判りません。 どうも何度も失礼しました。m(__)m

motty7777
質問者

お礼

返事遅れました。ありがとうございます。No1に補足説明していますので是非とも読んで知恵を貸してください!

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

こんばんは! 単純に考えて・・・ A2セルを=A1 として セルの表示形式をユーザー定義から ggge"年"m"月"   としてはダメですか? 無理やり関数で表示させるより、シリアル値そのままですので 後の処理にも都合が良いかと思います。 以上、参考になれば幸いですが、 的外れなら読み流してくださいね。m(__)m

motty7777
質問者

補足

簡略に説明します。            A        B C         D合計 1 平成21年8月10日    50,000 平成21年8月 2 平成21年9月2日 10,000 平成21年9月 3 平成21年9月13日 1,000 平成21年10月 4 平成21年10月5日 130,000 … 5  …以下日付ばらばら      … 開始設定!$B$106に平成21年8月1日 C1以下に=DATE(YEAR(開始設定!$B$106),MONTH(開始設定!$B$106),DAY(開始設定!$B$106))で平成21年8月と表示させています。C2はMONTH+2です。 以前はD1=SUMPRODUCT((YEAR(A1:A500)=2009)*(MONTH(A1:A500)=8)*C1:C500)として年月ごとの合計を算出していました。このたび、D1=SUMPRODUCT(A1:A500)=C1という条件式を作りたいのですがC列のDAYが邪魔してうまく合計されません。たぶん平成21年8月1日を合計しようとしているのです。平成21年8月分の合計がほしいのですが。 説明をわかっていただけるでしょうか?皆様の知恵をお貸しください!

関連するQ&A