2007年7月アーカイブ

第×月曜日が休日になるハッピーマンデー。エクセル関数だけで簡単に~という方法は思いつきませんでしたが、第1月曜日が見つかればそれに7日なり14日なりを足せばハッピーマンデーを実現できるかと思いますがどうでしょうか。

例えば、7月の今日は海の日です。7月の第3月曜日と決まっているようです。第1月曜日に14日を足せばイイですよね♪

ええと、万年カレンダーという前提で、西暦はどこかのセルを参照してもらって「yyyy」、ある年の7月1日ですから「セル1=DATE(yyyy,7,1)」こんな感じでしょうか。このある年の7月1日が何曜日かをまず求めます。月曜日なら14日を足せば問題クリアです♪

=IF(WEEKDAY(セル1)=2,セル1+14,"---")

もし、セル1の曜日が月曜日だったら、セル1に14を足しなさい・・・と単純に。2007年の場合、7月1日は日曜日ですからNGですね。

では違っていたら・・・とりあえずIF関数を入れ子にしてみましょう。

=IF(WEEKDAY(セル1)=2,セル1+14,IF(WEEKDAY(セル1+1)=2,セル1+15,"---"))

日本語訳を書くと、「セル1が月曜日ならセル1に14日を足しなさい、セル1が月曜日でなければ1日足した日付が月曜日かどうか調べ、月曜日ならセル1に15日を足しなさい、それ以外なら『---』を表示しなさい」でしょうか。

15を足すのは7月2日ではなく7月1日に足しているから14日+1日で15と言うわけですね。2007年の場合、これで無事クリアです♪

IF関数は7つまで入れ子にできますから、頑張って入れ子にしてください(笑)。とりあえず、以下の関数をテキストエディタなどにコピーして、「セル1」を日付が記載されたセルに置き換えれば利用できるかと。

=IF(WEEKDAY(セル1)=2,セル1+14,IF(WEEKDAY(セル1+1)=2,セル1+15,IF(WEEKDAY(セル1+2)=2,セル1+16,IF(WEEKDAY(セル1+3)=2,セル1+17,IF(WEEKDAY(セル1+4)=2,セル1+18,IF(WEEKDAY(セル1+5)=2,セル1+19,IF(WEEKDAY(セル1+6)=2,セル1+20,FALSE)))))))

余談ですが、西暦を指定してカレンダーを作る場合ですが、1月~12月のカレンダーなら何の問題も起きませんが、会社などで4月から翌3月までの「年度カレンダー」を作成する場合は、1月~3月の西暦に1年プラスすることをお忘れなく。

これを別シートで「祝日一覧表」としてまとめておいて、条件付き書式で判定すれば色分けなど簡単にできるかと思います♪ 当サイトの勤怠表Ver2はこの方法で作成しています。

「変更しようとしているセルまたはグラフは保護されているため、読み取り専用となっています」

のようなエラーメッセージが出ませんか?もしそうなら「ツール」→「保護」で解決できます。でもパスワードがわからないと解除できないので、そのファイルを作成した人に確認してください。

なお、保護してあると言うことは変更して欲しくないからと予測することもできます。セルの値を変更することでとんでもない結果が出るかもしれません。悪しからずご了承くださいませ。

「エクセルで作成した画面どおりに印刷されない」のが普通です。必ずプレビュー画面で確認しながら作成してください。

特によくあるのが「画面では文字がセルに入りきっているのに印刷したら切れてしまった」です。見た目にだまされないようにしてください。

時折、プレビューでキレイになるように作ると作業画面がへんてこになることもありますが、この辺はエクセルは表計算ソフトだからと諦めてください。

なんだかイイ回答じゃなくてごめんなさい。

エクセルがインストールされたパソコンを購入した場合、VBAのヘルプはインストールされていないと思いますので、ご自身でインストールしてください。

派遣先でも時折悩むことがあります。自分自身が当たり前のように使っているコマンドが使えない時ですね。あ、そうか、アレは自分でインストールしてたんだ・・・と。すぐにインストール用CD-ROMを出してもらえればいいのですが、複数使っていてどれがどれだかわからなくなっていたりして、プロダクトキーが合わなくて拒否されたりね(苦笑)。

自分でインストールする時は要不要を見分けてインストールしてください♪

このアーカイブについて

このページには、2007年7月に書かれたブログ記事が新しい順に公開されています。

前のアーカイブは2007年5月です。

次のアーカイブは2007年9月です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

ウェブページ

OpenID対応しています OpenIDについて
Powered by Movable Type 5.04