- ベストアンサー
関数を教えてください。
万年カレンダーを作ろうと思います。C2に西暦 F2に月 ここからカレンダー表を作ります。B4~H4に日~土 を入力した時、B5に関数式『(=DATE(C2,F2,1)-(WEEKDAY(DATE(C2,F2,1))-1)』と入力しました。カレンダーは無事できたのですが、関数の説明がいまいち理解できません。明日、発表するのですが、質問をされると??です。教えてくださいー。お願いいたします。胃がいたいです。特に最後の『ー1』は何ですか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
=DATE(C2,F2,1)-(WEEKDAY(DATE(C2,F2,1))-1)) 2005年9月のカレンダーを作るとして、 これの意味をひとつひとつ考えてみましょう。 ●DATE(C2,F2,1) C2に2005、F2に9が入ります。最後は定数で1が入っています。 ということは、この式は「2005/9/1」を表します。 ほかの月の場合でも、その月の1日を表す式ですね。 さて、今年の9月1日は、木曜日です。 B5は日曜日の場所ですよね。 日曜日は木曜日の4日前です。 したがって、4日分を前に戻して、8月28日にしなければ なりません。それを補正するのが後の式です。 ●-(WEEKDAY(DATE(C2,F2,1))-1) Weekday関数は、日曜日=1、月曜日=2・・・土曜日=7を 返す関数です。 2005/9/1は木曜日ですから、5を返します。 先ほど、木曜から日曜日を見た4日前には一つ多すぎます。 そこで、5から1を引いて4に合わせるんですね。 ●なぜ1か? この式のツボは、日曜日は9/1の何日前かを知ることです。 (WEEKDAY(DATE(C2,F2,1))-1)は言い換えると、 (9/1の曜日)-(日曜日) ということです。 WEEKDAY関数は日曜日に1を返します。
その他の回答 (2)
- shinkun0114
- ベストアンサー率44% (1553/3474)
#1です。補足を読みました。 おわかりいただき何よりです。 さて、もう一つのご質問の件ですが、残念ながら 私にはわかりかねます。この質問と内容もだいぶ 違いますので、新たに質問なさった方がよろしいかと 思います。その方が、明確な回答がもらえる可能性が 高いと思いますよ。 その際は、使用するソフト(パワーポイントなのか、 ブラウザなのか、特定のソフトではなく全般なのか) などを明記されるとよいでしょう。 さしでがましいようですが、アドバイスまで。
お礼
本当にありがとうございました。発表も無事に終わりました。助かりました。適切なご指導ありがとうございました。
- Wendy02
- ベストアンサー率57% (3570/6232)
こんばんは。 >=DATE(C2,F2,1)-(WEEKDAY(DATE(C2,F2,1))-1) >特に最後の『ー1』は何ですか? それは、月の1日(ついたち)のことですね。 カレンダーを作る時に、左上端の日曜日の欄に入る日付は、 その月の1日の曜日の数を引けば、月曜日なら、2 火曜日なら、3が入ってしまうので、1日(ついたち)の分の数を除いてやるわけです。
補足
よく理解できました。とっても助かりました。それと、もうひとつ質問があるのですが、発表の際、プロジェクターを使うのですが、ポインターの↑とかをマーカーペンのように変えて説明することはできますか?よく先生が使っているのですが・・。厚かましくて申し訳ございません。