アプリ版:「スタンプのみでお礼する」機能のリリースについて

過去の質問を検索したのですが見つからなかったので投稿させていただきました。
Excel2010を使用しています。
カレンダーを作成して日曜日と祝日と隔週月曜日の列に条件付き書式で色をつけたいのですが
教えていただけないでしょうか?
ちなみに25日締めなので 26日~翌月25日までのカレンダーです。

     B
3    26 27 28 29 30 31 1 2 3 4 5 6 7 8 9 10 11
4    土 日 月 火 水 木 金 土 日 月 火 水 木 金 土 日 月
5 ○○ 
6 △△
7 ××
8 合計

B3(26) は 2013/2/26 表示形式 d   B4(土)は=B3 表示形式 aaa
表が揃ってなくてわかりにくいですが日にちの下のセルに曜日がはいるようになっています。

祝日一覧を作成し、祝日と日曜日は=OR(WEEKDAY(B$3)=1,COUNTIF(祝日,B$3))
で条件付き書式で色を変更できたのですが

隔週月曜日はいろいろと試してみたのですがうまく設定できません。

よろしくお願いいたします。

A 回答 (6件)

 隔週と言いましても、例えば2013/3/4に色を付けて、2013/3/18に色を付けない場合と、 2013/3/4に色を付けずに、2013/3/18に色を付ける場合の2通りがありますが、色を付ける方の週はどのような決まりで決めておられるのでしょうか?


 例えば、ある特定の年月日の月曜日の日から始めて、年や月が変わっても関係なく、そのままその特定の日を基準として、月曜日に色を付ける週と、色を付けない周が交互にやって来るようになっているのでしょうか?
 それとも、その年の年度の始まりである4月において、初めて月曜日になる日が基準の日となり、交互に色を付ける週と付けない週がやって来るようになっているのでしょうか?
 或いは、その年の年度の始まりである4月において、2回目の月曜日になる日が基準の日となり、交互に色を付ける週と付けない週がやって来るようになっているのでしょうか?
 或いは、その月ごとの初めて月曜日になる日が基準の日となり、交互に色を付ける週と付けない週がやって来るようになっているのでしょうか?

 上記の点が不明ですので、色を付ける方の週はどのような決まりで決めておられるのかを御教え願います。

 例えば、もし、「ある特定の年月日の月曜日の日から始めて、年や月が変わっても関係なく、そのままその特定の日を基準として、月曜日に色を付ける週と、色を付けない周が交互にやって来るようになっている」場合において、2013/3/4が色を付ける日だった場合には、次の様な条件にされると良いと思います。

=AND(ISNUMBER(1/DAY(B$3)),MOD(B$3-"2013/3/4",14)=0)

 尚、ISNUMBER(1/DAY(B$3))という部分を入れているのは、3行目のセルに日付が入力されていない場合を排除するためですので、もし、3行目のセルに日付が必ず入力される事が保障されている場合には、

=MOD(B$3-"2013/3/4",14)=0

だけでも大丈夫です。

 余談ですが、2013/2/26は土曜日ではなく、火曜日ではないでしょうか?

この回答への補足

kagakusuki様

回答ありがとうございます。

2013/2/26は土曜日ではなく、火曜日ですよね。
1/26と入力したつもりが2/26って入力しちゃってました。

2013/1/26から2013/2/25までの表を作成して祝日・日曜日と隔週月曜日の1/28・2/11・2/25に色付けをしたかったんです。
3月分は2/26から3/25と毎月表を作成するのですがいちいちカレンダーを見て休日の表に日にちを入れなくてもできるのではないかと思い質問させていただきました。

説明不足で申し訳ございませんでした。

ちなみに会社がEXCEL2010で家で使っているEXCELはXPなのでまだ、教えていただいた事が試せていません。

また、仕事の手が開いたら教えていただいた事を試していただきます。
まずはお詫びまで。

補足日時:2013/01/22 19:18
    • good
    • 0

考え方を整理するための助言としてお納めください。




例えば、「2013/1/1」をA1セルに打ち込んでおきます。
これをシリアル値で表示してみます。
表示形式を標準などにするだけですが、結果は「41275」です。

これをWEEKDAY関数にかけてやると、
   =WEEKDAY(A1)
結果は「3」が返ります。火曜日ですから。

さらに、MODという関数はご存知でしょうか。
詳細は別途お調べいただきたいのですが、要するに割り算の「あまり」を求める関数です。
これを使って、
   =MOD(A1,7)
とすると、これも「3」が返ってきます。

順に2013/1/2~繰り返してみてみると(ずーっと下にフィルで良いです)、
日曜日が「1」、月曜日は「2」・・・・金曜日が「6」、土曜日は「0」
と繰り返していることがわかりますね。
これはWEEKDAY関数の返り値の挙動と同じです。
1週間は7日ですから、日付シリアルを7で割って、あまりを求めれば、
自ずと曜日がわかる、と言うことですね。


さて、ヒント・・と言うより、もう答えは出ていたりしますが、
「隔週月曜日」と言うことは、14日おきですね。
日付を14で割って「あまり」を求めれば、「隔週月曜日」を求められそうな気がしませんか?


今月の第2月曜日は「2013/1/14」、シリアル値では「41288」です。
と言うことは、
   =MOD("2013/1/14",14)  または  =MOD(41288,14)
で、返り値は「2」です。
第3月曜は「2013/1/21」、シリアル値では「41295」ですので、
   =MOD("2013/1/21",14)  または  =MOD(41295,14)
で、返り値は「9」です。
こうなると「隔週月曜日」を判断する材料に出来そうですね。

あとはご自身のお好みでお使いくださいませ。



余談ですが、このMOD関数はなかなか便利です。
偶数・奇数行を見分けたり出来ますから。
条件付書式で1行おきのシマシマ表もあっという間に出来ますから、覚えて損は無いですよ^^
   =MOD(ROW(),2)
見たいな感じで使えますよ^^
    • good
    • 0
この回答へのお礼

回答ありがとうございました。

MODの使い方がよくわかりました。

お礼日時:2013/01/25 07:55

WEEKNUM関数とMOD関数を使って、条件付き書式で入力する式は次のようにすればよいでしょう。



=OR(WEEKDAY(B$3)=1,COUNTIF(祝日,B$3),AND(MOD(WEEKNUM(B$3),2)=0,WEEKDAY(B$3)=2))

MOD(WEEKNUM(B$3),2)=0をMOD(WEEKNUM(B$3),2)=1に変更して使用もよいでしょう。
    • good
    • 0

添付図参照


B3: =IF(AND(MONTH(DATE($A1,$A2,COLUMN(Z1)))<>$A2,DAY(DATE($A1,$A2,COLUMN(Z1)))>25),"",DATE($A1,$A2,COLUMN(Z1)))
B4: =TEXT(B3,"aaa")

セル B3 における[条件次書式]は次のとおり
条件1
数式が   =B$4="土" または =MOD(B$3,7)=0
パターン色 青

条件2
数式が   =COUNTIF(祝日,B$3)
パターン色 赤

条件2
数式が   =MOD(COUNTIF($B$4:B$4,"月")*(B$4="月"),2)
パターン色 緑
「EXCEL 条件付き書式」の回答画像4
    • good
    • 0

[No.4]の誤謬訂正


「パターン色 緑」の箇処の「条件2」を「条件3」に訂正します。
(云わずもがな?)
    • good
    • 0

>2013/1/26から2013/2/25までの表を作成して祝日・日曜日と隔週月曜日の1/28・2/11・2/25に色付けをしたかったんです。



 もしかしますと、「祝日・日曜日」と「隔週月曜日」は別の色ではなく、同じ色で塗り潰すので、1つの条件付き書式で済ましたいという事なのでしょうか?
 それでしたら、

=AND(ISNUMBER(1/DAY(B$3)),OR(WEEKDAY(B$3)=1,COUNTIF(祝日,B$3)MOD(B$3-"2013/1/28",14)=0))

とされると良いと思います。
 尚、上記の数式中の"2013/1/28"の部分を、"2013/2/11"や"2013/2/25"に変えても、2013/1/28のセルに色が付きます。
 それから、

>3月分は2/26から3/25と毎月表を作成するのですがいちいちカレンダーを見て休日の表に日にちを入れなくてもできるのではないかと思い質問させていただきました。

との事ですが、祝日の表を毎月入力し直していては面倒になりますから、1年に1度だけ1年分の祝日の表を作成しておき、使い回せば良いと思います。
 尚、以下のサイトに、1年分の祝祭日が掲載されています。

【参考URL】
 国立天文台 > 一般の方向け > 日の出・日の入り情報(暦) > 暦要綱
  http://eco.mtk.nao.ac.jp/koyomi/yoko/

 国立天文台 > 一般の方向け > 日の出・日の入り情報(暦) > 暦要綱 > 平成25年(2013)
  http://eco.mtk.nao.ac.jp/koyomi/yoko/2013/rekiyo …

 上記2つの参考URLの内、2番目のURLのページに「国民の祝日  平成25年 (2013)」という表がありますので、その表中の文字の部分をまとめてコピーしてから、Excelの例えばA1セルに貼り付けますと、以下の様になります。

        A列         B列
 1行目   名称         月日
 2行目   元日         1月1日
 3行目   成人の日      1月14日
 4行目   建国記念の日   2月11日
 5行目   春分の日      3月20日
 6行目   昭和の日      4月29日
 7行目   憲法記念日     5月3日
 8行目   みどりの日      5月4日
 9行目   こどもの日      5月5日
10行目   名称         月日
11行目   海の日        7月15日
12行目   敬老の日      9月16日
13行目   秋分の日      9月23日
14行目   体育の日     10月14日
15行目   文化の日      11月3日
16行目   勤労感謝の日  11月23日
17行目   天皇誕生日    12月23日
18行目
19行目
20行目   5月 6日、11月 4日は休日になる。

 このままでは20行目の内容である「5月 6日、11月 4日は休日になる。」がB列の日付には反映されていませんから、B18セルに5/6、B19セルに11/4と入力します。
 次に、日本の祝祭日以外にも、質問者様のお勤め先で決められている休日(例えば創業記念日や年末年始・盆休み等)があれば、B20以下に合わせて入力して下さい。
 そして、もし、このExcelへの貼り付け作業を行った時の日付が、2013年ではなく、2012年内であった場合には、B列の各日付のデータは2013年ではなく、2012年の日付となっています(例えばB2セルの値は、「2013/1/1」ではなく、「2012/1/1」となっています)から、B列の日付が入力されているセルをまとめて範囲選択してから、Excelの置換機能を使用して、

2012/

を全て

2013/

に置換して下さい。
 これで、B列に1年分の祝祭日のリストが出来上がりますから、後は、B列の日付が入力されているセル範囲をコピーして、御質問文にある

>祝日一覧を作成し、

の祝日一覧のセル範囲に、[値のみを貼り付け]されると良いと思います。
 文章で説明しますと面倒そうに思えるかも知れませんが、日付を1つずつ手入力されるよりは、はるかに楽ですし、入力ミスも少なくなると思います。


>ちなみに会社がEXCEL2010で家で使っているEXCELはXPなのでまだ、教えていただいた事が試せていません。

 XPでも使用可能な関数や機能しか使用しておりませんから、多分、XPでも動作させる事は可能な筈だと思います。(もしかしますと、条件付き書式の数式を入力する欄に、入力可能な文字数の限界を超えてしまう恐れも、皆無ではありませんが)
 尚、万が一、XPにおける条件付き書式の設定方法を御存じではあられない場合には、以下のURLのページを御参考にされると良いかと思います。

【参考URL】
 よねさんのWordとExcelの小部屋 > ~Excel2003 基本講座 > 条件付き書式
  http://www.eurus.dti.ne.jp/~yoneyama/Excel/jyo-s …
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!