• ベストアンサー

エクセルの計算式を教えてください。

添付してある表のように毎月ごとに販売数を日々入力しております。 月が変わるたびに、月の日数が28~31日に変わりますが、セルA1のリストを変えるだけで自動的に他のセルの月日数を変更する方法があるか教えてください。 質問1 セルAK4に自動的にその月の日数での見込み数がでるようにするにはどうすればよいでしょうか? 質問2 =TODAY()のように式を入れるだけでその月の月日数を表示できるような関数はありますでしょうか? 質問2 セルAF3~AH3の表示がその月の日数に併せて自動で表示・非表示になるようにする事は可能でしょうか? できれば「うるう年」にも対応して正しい月日数が表示されるとありがたいです。 分かる方、教えていただけますよう宜しくお願いいたします。

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

  • ベストアンサー
  • kmetu
  • ベストアンサー率41% (562/1346)
回答No.3

質問1 =TEXT(DATE(2009,A1+1,0),"dd")*AJ4 質問2 質問3 =IF(VALUE(TEXT(DATE(2009,$A$1,COLUMN(A1)),"dd"))=COLUMN(A1),COLUMN(A1),"") として右にフィルしてください

その他の回答 (4)

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

初めに年が有りませんといつの年の月か判断できませんのでA2セルに2009年などと年を付けた形で入力するとします。A1セルは9月度とプルダウンから表示させるとします。 質問1 AK4へは次の式を入力します。 =IF(OR($A$1="",$A$2=""),"",AJ4*DAY((DATE(LEFT($A$2,4),LEFT($A$1,FIND("月度",$A$1)-1)+1,0)))) その月の最終日は翌月の0日で求めることができます。 質問2 =IF(OR($A$1="",$A$2=""),"",DAY((DATE(LEFT($A$2,4),LEFT($A$1,FIND("月度",$A$1)-1)+1,0)))) 質問3 C3セルには次の式を入力しAH3セルまでオートフィルドラッグします。 =IF(OR($A$1="",$A$2=""),"",IF(MONTH((DATE(LEFT($A$2,4),LEFT($A$1,FIND("月度",$A$1)-1),COLUMN(A1))))<>LEFT($A$1,FIND("月度",$A$1)-1)*1,"",DAY((DATE(LEFT($A$2,4),LEFT($A$1,FIND("月度",$A$1)-1),COLUMN(A1))))&"日")) COLUMN関数を使って日にちを変化させますが日付の月がA1セルで表示されている月に合わなければ空白のセルとなるようにしています。もちろん、年も使っていますのでうるう年も問題なく対応できます。

  • kmetu
  • ベストアンサー率41% (562/1346)
回答No.4

No.3です A1には9とか数値だけを入れるようにして 表示形式で月度を入れるなどしてください。 また、質問2 質問3として回答を書きましたが 質問2 =TODAY()のように式を入れるだけでその月の月日数を表示できるような関数はありますでしょうか? の回答は =TEXT(DATE(2009,A1+1,0),"dd") です。

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

No.1です! たびたびごめんなさい。 1日平均と月見込み数の回答をしていませんでした。 月見込み数とは 1日平均×その月の日数 で良いのでしょうか? もしそうであれば、 1日平均のAJ4セルに =AVERAGE(C4:AH4) 月見込み数のAK4セルに =AJ4*COUNT(C3:AH3) という数式を入れてみてください。 尚、エラー処理はしていません。 もし的外れならごめんなさいね。 何度も失礼しました。m(__)m

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

こんばんは! 色々方法はあるかと思いますが・・・ 一例です。 ↓の画像のように少し表を変更させていただきました。 A1セルには数値のみを表示させるようにA2セルに「月度」としています。 そして、C3セルに =IF($A$1="","",IF(DATE(2009,$A$1,COLUMN(A1))<=EOMONTH(DATE(2009,$A$1,1),0),DATE(2009,$A$1,COLUMN(A1)),"")) という数式を入れ、セルの書式設定の表示形式はユーザー定義から  d だけにします。 (シリアル値の方が何かと便利かとおもいますので) そして、31日のセルまで列方向にオートフィルでコピーします。 これでA1セルのプルダウンから月を選べば月末まで表示されるはずです。 大の月・小の月も対応しています。 尚、EOMONTH関数を使っていますので、Excel2003以前のバージョンでは メニュー → ツール → アドイン → 「分析ツール」にチェックを入れておく必要があります。 そして、とりあえず、今年限定の数式になりますので、 もし来年度も使用したい場合は数式の 2009 の部分を2010に変更すればOKかと思います。 以上、質問(2)の回答にはならないかもしれませんが、 参考になれば幸いです。 他に良い方法があれば読み流してくださいね。m(__)m

関連するQ&A

  • エクセルでの日数の計算

     こんばんは。エクセルで指定の日付から今日現在のに数を求めるやり方で分からないことがあり質問します。 ・A1のセルに今日の日付を、 =TODAY() と入れました。 ・A2のセルに指定日の日付(例えば2006/03/15)と入れました。 ・A3のセルに =DATEDIF(A2,$A$1,"D")と入れました。 A3のセルには指定日から今日までの日数が表示されます。  そこで質問ですが、A4のセルに指定日から今日の5日後の日数を、A5のセルに指定日から今日の5日前の日数を表示したいのですが、どの様に入力したらよいのか分かりません。やり方を教えてくださいお願いします。 

  • 1ヶ月分のすべての日付と曜日を自動入力したい

    1年分12カ月の勤務表を作ろうとしていますが、現在日付と曜日を手入力しています。非常に不便を感じていますので質問させていただきます。 添付画像のG3セルからAK3セルに日付とG4セルからAK4セルに曜日を自動入力したい。(F2.H2セルの年月を変更した場合にも反映するように) 日付を自動表示する場合2月末は29日で4月末は30日なのでその場合の29日から31日までの「月末」の表示処理する(2月だったら30,31日を表示しない、閏年も含めて)関数を教えてください。 なお、土日祝日に自動的に色付けする方法も合わせてお願いします。 ExcelのバージョンはExcel2007です。

  • EXCELでTODAY()の日付から31日分を表示

    EXCEL2002で、1行に31日分のその日の日付からスタートする、連続する日付カレンダーを表示させます。 ちなみに、$AC$1には =TODAY() の値が入り、AH2は30日目の日付になります。 =IF( OR( AND(OR(MONTH($AC$1)=4,MONTH($AC$1)=6,MONTH($AC$1)=9,MONTH($AC$1)=11),AH2=30), AND(MONTH($AC$1)=2,IF(OR(MOD(YEAR($AC$1),400)=0,AND(MOD(YEAR($AC$1),4)=0,MOD(YEAR($AC$1),100)<>0)),AH2=29,AH2=28)) ),1,AH2+1) 問題が発生しました。 $AC$1がうるう年ではない3月31日、5月31日、8月31日、10月31日にあたるとき、 31日目のセルには「1」が返されてしまいます。 AH2+1をAH2+10とすると10が返ります。 どうやら直前のセルの値AH2が「0」に評価されてしまうようです。 どこを直せば正しい値が返ってくるか教えていただけないでしょうか?

  • エクセルの関数でその年のその月の合計日数を自動で求めることはできますか

    エクセルの関数でその年のその月の合計日数を自動で求めることはできますか? 例えばA1に  2010/10/4(日にちは適当な日数です)  等と入力されていたら B1に自動的に  31と表示される。 A1に2010/9/7 等と入力されていたら B1に自動的に  30と表示される。 また2月の28日やうるう年の29日も考慮してくれるようにしたいのですが・・・。

  • エクセルでカウントダウンの計算式

    エクセルで、今日からある日付までの日数を計算して表示させたいです。 例えば、今日から6月30日までの日数は、 =DATEVALUE("2006年6月30日")-DATEVALUE("TODAY") となると思いましたが、これだとエラーが出ます。 正しい計算式を教えていただけるでしょうか。

  • エクセルの月表示について

    エクセルで月だけを表示させたいです。 たとえば 開いた日がtodayで自動で入るとしてそのセルは月のみ表示させます。 その次のセルに翌月、翌々月と1年先まで自動で表示させたいのです。 何かいい関数はありますか?

  • エクセルで期日を自動計算し期日を過ぎると文字色変更するには(3)

    再度の質問となります。 すみません。。。 内容は、、、 A1セルに10月1日と入力し7日後の10月8日がB1セルに自動計算され入力されるようにする。 そして、自動計算されたB1セルの文字色が経過日数8日以上で赤色になるようにする。 と言うもので、higekumanさま、S-Fujiさまのお教え通り、 B1に=A1+7、条件付き書式で「数式が」を「TODAY()-A1」、フォント色を赤で出来ましたが、そこで問題が、、 A1セルに何も入力しないとB1セルに赤色で「1月7日」となってしまいます。 A1セルが空白の時はB1セルも空白にはならないのでしょうか、、、 ご教示の程宜しくお願い致します。

  • エクセルの計算について

    ドロップダウンリストで作った ・有給 ・半有給 ・夏休 等のA1からA10セルまでのリストを、「有給は1」「半有給は0.5」「夏休は0」などリスト内で選んだ項目をA11セルに自動合計する場合どうすればよいのでしょうか? 素人質問で申し訳ございませんが、どなたかご教授下さい。 よろしくお願いします。

  • エクセル 期間計算 平年 閏年

    はじめまして。既出の質問でしたらすみません。エクセル2000を使っています。で、ある期間の日数をdetedif関数を使えば算出できると思うんですが、その期間に閏年が含まれる場合に平年の期間は○日、閏年の期間は○日というふうに分けて算出する方法はありますでしょうか?  例えば2004/5/10~2008/7/17 の期間であれば平年の期間は1095日、閏年の期間は434日になると思いますが、手計算ではなく 期間を入力すれば自動で算出できるようにしたいのです。どなたかわかる方がいらっしゃいましたらご指導お願いします。

  • Excel2010 目標売上に達した日の自動抽出

    B9:B39セルに、日付が自動表示されます。 W9:W39セルに、B9:B39セルの日付の売上が自動表示されます。 *B9:B39は日付自動表示関数が入力されています。 *W9:W39はSUM関数が入力されています。 *オプションでは「ゼロ値のセルにゼロ表示をする」のチェックを外してゼロ表示しない設定にしてます。 D45、G45、J45、M45、P45、S45、V45、Y45、AB45、AE45、AH45、AK45のセルに W9:W39セルの売上が¥200000以上の日付を抽出して自動表示したいです。 *日にちの自動抽出表示は、D45セルから順に日づけの小さい数値から表示するようにしたいです。 *日にちの自動抽出表示は、D45からAK45までの合計12日数を上限して13日めからは表示しません。 例)W10セルに¥1000000が自動表示、W12セルに¥1200000が自動表示された場合、 D45セルに2が表示、G45セルに4が表示される。 よろしくお願いいたします。

専門家に質問してみよう