- 締切済み
エクセルで曜日から日付を求めたい
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- kagakusuki
- ベストアンサー率51% (2610/5101)
回答No.2です。 もし、各曜日の表ごとに異なる関数を設定しても良い場合には、次の様にして下さい。 まず、C3セルに次の関数を入力して下さい。 =IFERROR(($N$1&$O$1&"年"&$Q$1&"月"&1+COLUMNS($C3:C3)*7-WEEKDAY($N$1&$O$1&"年"&$Q$1&"月1日",12)&"日")+0,"") 次に、C3セルの書式設定の表示形式を[ユーザー定義]の d に設定して下さい。 次に、C3セルをコピーして、D3~G3のセル範囲に貼り付けて下さい。 次に、K3セルに次の関数を入力して下さい。 =IFERROR(($N$1&$O$1&"年"&$Q$1&"月"&1+COLUMNS($K3:K3)*7-WEEKDAY($N$1&$O$1&"年"&$Q$1&"月1日",13)&"日")+0,"") 次に、K3セルの書式設定の表示形式を[ユーザー定義]の d に設定して下さい。 次に、K3セルをコピーして、L3~O3のセル範囲に貼り付けて下さい。 次に、S3セルに次の関数を入力して下さい。 =IFERROR(($N$1&$O$1&"年"&$Q$1&"月"&1+COLUMNS($S3:S3)*7-WEEKDAY($N$1&$O$1&"年"&$Q$1&"月1日",14)&"日")+0,"") 次に、S3セルの書式設定の表示形式を[ユーザー定義]の d に設定して下さい。 次に、S3セルをコピーして、T3~W3のセル範囲に貼り付けて下さい。 次に、C17セルに次の関数を入力して下さい。 =IFERROR(($N$1&$O$1&"年"&$Q$1&"月"&1+COLUMNS($C17:C17)*7-WEEKDAY($N$1&$O$1&"年"&$Q$1&"月1日",15)&"日")+0,"") 次に、C17セルの書式設定の表示形式を[ユーザー定義]の d に設定して下さい。 次に、C17セルをコピーして、D17~G17のセル範囲に貼り付けて下さい。 次に、K17セルに次の関数を入力して下さい。 =IFERROR(($N$1&$O$1&"年"&$Q$1&"月"&1+COLUMNS($K17:K17)*7-WEEKDAY($N$1&$O$1&"年"&$Q$1&"月1日",16)&"日")+0,"") 次に、K17セルの書式設定の表示形式を[ユーザー定義]の d に設定して下さい。 次に、K17セルをコピーして、L17~O17のセル範囲に貼り付けて下さい。 次に、S17セルに次の関数を入力して下さい。 =IFERROR(($N$1&$O$1&"年"&$Q$1&"月"&1+COLUMNS($S17:S17)*7-WEEKDAY($N$1&$O$1&"年"&$Q$1&"月1日",17)&"日")+0,"") 次に、S17セルの書式設定の表示形式を[ユーザー定義]の d に設定して下さい。 次に、S17セルをコピーして、T17~W17のセル範囲に貼り付けて下さい。 次に、C4セルに次の関数を入力して下さい。 =IF(SUM(C3)<1,"",C3) 次に、C4セルの書式設定の表示形式を[ユーザー定義]の aaa に設定して下さい。 次に、C4セルをコピーして、D4~G4、L4~O4、T4~W4、D19~G19、L19~O19、T19~W19の各セル範囲に貼り付けて下さい。 以上です。
- kagakusuki
- ベストアンサー率51% (2610/5101)
今仮に、N1セルに「平成」等の元号が入力されていて、O1セルに年を表す整数が、Q1セルに月を表す整数がそれぞれ入力されているものとします。 そして、「月曜の表の第1週目の日付を表示させる列」、「火曜の表の第1週目の日付を表示させる列」、「水曜の表の第1週目の日付を表示させる列」という「各曜日の表の第1週目の日付を表示させる列」の列の間隔は全て等しくなっているものとします。 まず、C4、K4、S4、C18、K18、S18の「各曜日の表の第1週目の曜日を表示させるセル」に月~土の各々の曜日を入力して下さい。 次に、C3セルに次の関数を入力して下さい。 =IFERROR(($N$1&$O$1&"年"&$Q$1&"月"&8+MOD(COLUMN()-COLUMN($C3),COLUMNS($C3:$K3)-1)*7-WEEKDAY($N$1&$O$1&"年"&$Q$1&"月1日",10+FIND(INDEX(4:4,COLUMN()-MOD(COLUMN()-COLUMN($C3),COLUMNS($C3:$K3)-1)),"日月火水木金土"))&"日")+0,"") 次に、C3セルの書式設定の表示形式を[ユーザー定義]の d に設定して下さい。 次に、C3セルをコピーして、D3~G3、K3~O3、S3~W3、C18~G18、K18~O18、S18~W18の各セル範囲に貼り付けて下さい。 次に、D4セルに次の関数を入力して下さい。 =IF(SUM(D3)<1,"",D3) 次に、D4セルの書式設定の表示形式を[ユーザー定義]の aaa に設定して下さい。 次に、D4セルをコピーして、E4~G4、L4~O4、T4~W4、D19~G19、L19~O19、T19~W19の各セル範囲に貼り付けて下さい。 以上です。
- msMike
- ベストアンサー率20% (364/1804)
タイトル「エクセルで曜日から日付を求めたい」だけを読むと、何と無茶苦茶なことを!と叫びます。 例えば、今年の9月と12月の1~30日のカレンダーを凝視すれば分かります。
お礼
ご意見ありがとうございました。 何とか試行錯誤して自己解決できましたので終了します。