- ベストアンサー
Excel 関数を使って曜日を自動的に出したい
Excel関数を使って曜日を自動的に出るようにしたいです。 通常 10月1日 木 10月2日 金 10月3日 土 ・ ・ と表示したい場合、CHOOSE関数とWEEKDAY関数を使って 曜日を自動的に出すやり方はわかるのですが、 月と連動させて表示をさせたい (例) 10月 ← ★ここに「月」を入力すると ★その月に準じた日数が自動的に出てきて・・・ (10月なら31日まで、11月なら30日までというように) ↓ 1日 木 ←★さらに曜日も自動的に出る 2日 金 3日 土 という仕組みにしたいです。 どのように作ればよいでしょうか? わかりづらく申し訳ございませんが お知恵を貸してくださいm(_ _)m
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
こんばんは! 色々方法はあるかと思いますが・・・ 一例です。 ↓の画像で説明させていただきます。 D1セルに年 D2セルに月 の数値を入れると自動的に日付と曜日が表示されるようにしてみました。 尚、A2セルの表示形式はユーザー定義から d に! B2セルの表示形式はユーザー定義から aaa にします。 シリアル値の方が何かと都合が良いと思いますので 全てシリアル値にしています。 A2セル(セルの表示形式= d) =IF(COUNTBLANK($D$1:$D$2)>0,"",IF(MONTH(DATE($D$1,$D$2,ROW(A1)))=$D$2,DATE($D$1,$D$2,ROW(A1)),"")) B2セル(セルの表示形式= aaa) =IF(A2="","",A2) として、A2・B2セルを範囲指定し、B2セルのフィルハンドル(+)マークで 31日まで下へコピーすると画像のような感じになります。 これで大の月・小の月もちゃんと対応できるはずです。 以上、参考になれば幸いです。m(__)m
その他の回答 (3)
- 135ok
- ベストアンサー率34% (26/75)
1例です。 B1 2009 年を入力 B2 10 月を入力 入力した年月によって、日付が連動。 A5 =DATE(B1,B2,1) B5 =IF(A5="","",TEXT(A5,"aaa")) ←aaa又はaaaa *A列が空欄の時は空欄、以外は曜日を表示。 *下にコピー A6 =IF(A5="","",IF(A5+1>DATE($B$1,$B$2+1,0),"",A5+1)) *下にコピー *B2に入力した月に連動し、月末の日付を表示。 *セルの書式設定→表示形式→日付で、希望の表示方法を選択。 参考 10/16~11/15で表示したい場合は、下記の通り変更すれば対応します。 A5 =DATE(B1,B2,●) ●を16 A6 =IF(A5="","",IF(A5+1>DATE($B$1,$B$2+1,●),"",A5+1)) ●を15
お礼
返信ありがとうございます。 お礼が遅くなり申し訳ございません! こちらの方法でやってみたらできました! ありがとうございました!!
- tom04
- ベストアンサー率49% (2537/5117)
No.2です! たびたびごめんなさい。 日付の表示は ○日 とした方が良かったのですね? そうであれば、セルの表示形式のユーザー定義から d"日" としてみてください。 尚、余計なお世話かも知れませんが、曜日のセルを ○曜日 と表示させたいのであれば、 同じくユーザー定義から aaaa とa をもう一つ追加してみてください。 どうも何度も失礼しました。m(__)m
- DIooggooID
- ベストアンサー率27% (1730/6405)
ご質問のような構成でしたら、 1日 から 28日までは、常時表示させたままで、29日以降に関して、 指定された月の大小によって、表示/非表示を行います。 日付の隣の曜日に関しては、入力された月からシリアル値を求めて、 その値に1日分ずつのシリアル値を増分として加えることで、それぞれの シリアル値を求めます。 あとは、ご質問者さまが実施された方法で、曜日表示を行えば良いと思います。
補足
回答ありがとうございます。 でもごめんなさい、私にはちょっと難しいです(汗) 「指定された月の大小によって、表示/非表示を行います。」 と 「入力された月からシリアル値を求めて、その値に1日分ずつのシリアル値を増分として加えることで、それぞれのシリアル値を求めます。」 という部分が実際どのようにすればいいのかわかりません。 初心者で申し訳ないのですが、実際にどうセルに入力したりするのか手順を詳しく教えていただけるとありがたいのですが・・・すみません!
お礼
返信ありがとうございます! お礼が遅くなり申し訳ございません。 こちらの方法でできました! ありがとうございますm(_ _)m