『カレンダーの指定曜日に文字を入れたい』(さくら) いつもお世話になっています。 カレンダーを作ったのですが、もう一歩の大事なところができません。 A B C 1 2017年 3月 2 日付  予定 3 1 水 4 2 木 5 3 金 6 4 土 7 5 日 8 6 月 9 7 火 10 8 水 11 9 木 12 10 金 13 11 土 B3には=DATE($A$1,$B$1,A3)が入っています。 A1B1の数字を変えて曜日を自動に出しています。 予定のところに第1,3,5土曜日は午後休み、第2,4土曜日は休みと自動で入れたいです。 よろしくお願いします。 < 使用 Excel:Excel2010、使用 OS:Windows7 > ---- > B3には=DATE($A$1,$B$1,A3)が入っています。 ということは、A列には「1〜31」の数値が入力されていて B列は表示形式で曜日にしてるってことですよね? それに合わせるのなら C3 =IF(WEEKDAY(B3)<7,"",IF(ISODD(SUMPRODUCT((WEEKDAY($B$3:B3)=7)*1)),"午後休み","休み")) 下にコピー、とか。 ところで、3月は31日まであるからいいとして、2月とか4月のような小の月はどうしてるんですか? A列に数式を入れて、A列をシリアル値(日付データ)、B列の曜日は文字列にした方がいいと思いますけどね。 とりあえず参考まで。 (笑) 2016/08/10(水) 01:20 ---- > A列に数式を入れて、A列をシリアル値(日付データ)、B列の曜日は文字列にした方がいいと思いますけどね。 一応 ↑ の具体例。 A3 =IFERROR(($A$1&-$B$1&-ROW(A1))*1,"") 表示形式〜ユーザー定義 d ROW(A1) はA1セルの値とは関係ないので、変更しないように。 B3 =TEXT(A3,"aaa") C3 =IF(B3<>"土","",IF(ISODD(COUNTIF($B$3:B3,"土")),"午後休み","休み")) A3:C3 を33行目までコピー 小の月やうるう年にも対応しています。 参考まで。 (笑) 2016/08/10(水) 01:39 ---- C列は ↓ でもいいかもしれない。 ■曜日が表示形式の場合(最初の回答) C3 =IF(WEEKDAY(B3)<7,"",IF(ISODD(ROUNDUP(A3/7,0)),"午後休み","休み")) ■曜日が文字列の場合(2つめの回答) C3 =IF(B3<>"土","",IF(ISODD(ROUNDUP(DAY(A3)/7,0)),"午後休み","休み")) DAY(A3) → ROW(A1) でも可。 というか、C列の予定って、もしかして「午後休み」「休み」以外にも 何か入力するんですかね? (笑) 2016/08/10(水) 03:24 ---- ありがとうございました。 29以降は=IF(DAY(DATE($A$1,$C$1,29))=29,29,"")が入ってました。 年や月を変えていきます。 ひとまず、最初の案を取り入れました。 29日以降の小月の場合、B列C列にエラーがでますが、条件書式などで消すことができますか? COUNTIFの条件書式を設定してみましたが、ダメでした。 C列には自由記載の予定です。 (さくら) 2016/08/10(水) 07:01 ---- > C列には自由記載の予定です。 数式が入ってるセルに、上書きで予定を手入力するってこと? 数式、消えますよね。 いいんですか、それで? (笑) 2016/08/10(水) 08:48