- ベストアンサー
Excelで1ヶ月分の日付列を設定する方法
- Excelで1ヶ月分の日付列を設定する方法を教えてください。初日の18を2006/10/18と入れたら、日付と曜日が自動的に並ぶようにしたいです。
- 質問者は、オフィスで毎日の仕事時間を記録する表をExcelで作成しています。表には日付の列があり、毎月書き直さなければなりません。問題は、行を変えずに日付と曜日を自動的に並べる方法を見つけることです。
- 問題は、31日がない月に空白の行を表示しなければならない点や、分析ツールがインストールされていないPCでも使える方法を見つけることです。マクロを使用しない方法が望ましいです。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
めちゃくちゃややこしくなって自分自身でもわけがわかならくなりそうですが、なんとかできました。(もっと簡単にできるかもしれませんが…) A1に18日の日付が入り、A2からA31に続きの日付が入る場合、A2に以下の数式を入れて、A31までコピーしてください。ただし、18日の日付がA1でない場合、単純に18日の下にコピーしても正しく表示されないので、数式中の参照セルやプラスマイナスのパラメータを変える必要があります。そのときは微調整しますので補足をお願いします。 =IF(COUNTIF($A$1:A1,$A$1+ROW()-1-IF(ROW()+16<DAY(DATE(YEAR($A$1),MONTH($A$1)+1,1)-1),0,31-DAY(DATE(YEAR($A$1),MONTH($A$1)+1,1)-1))),"",$A$1+ROW()-1-IF(ROW()+16<DAY(DATE(YEAR($A$1),MONTH($A$1)+1,1)-1),0,31-DAY(DATE(YEAR($A$1),MONTH($A$1)+1,1)-1)))
その他の回答 (2)
- merlionXX
- ベストアンサー率48% (1930/4007)
1.A列のセル書式をユーザー定義で d aaa にします。 2.A1に日付を入れます。 3.A2に =A1+1 と入れ、下までドラッグして式をコピーします。 これで、A1セルへの日付入力だけでカレンダーはできますね。 月変わりの空白は手作業になります。
補足
下までオートフィルすると月替わりに行がズレてしまいます。(※集計の関係で、「行を変えるな!」と言われています。) そこで、"初日+1" と "末日-1" という方法を考えたのですが、これにはEDATE関数を必要とするし、29日、30日、31日部分をうまく処理できないのです...。 Excelに詳しくない社員にも配るものなので、完全に自動化できないのなら、今まで同様、手動でオートフィルすることと大差ないわけでして...何か良いアイデアはないでしょうか?
- suzukikun
- ベストアンサー率28% (372/1325)
2日分入力してオートフィルでほとんどできますが、31日を空白にするのは手作業になります。
お礼
なるほど!って感じです!ありがとうございます!