• ベストアンサー

excelかaccessでカレンダー

カレンダーのような物を作りたいのですが、少々条件があります。 よく事務所にあるような31日がズラーっと横に並んでいる予定表 のような物を作りたいのですが、土日は表示したくないのです。 かつ、一ヶ月分作れば、あとは月の数字を変えるだけで12ヶ月分 作れるようにしたいのです。 月が変わると土日がずれてしまうので、困っています。条件によって セルの幅を変えることは無理でしょうし、やはりマクロなどを組まないと ダメでしょうか?(マクロでも不可能?) で、accessで可能ならaccessでもいいと思っています。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
noname#204879
noname#204879
回答No.5

ANo.4のステップ2で「次式」が抜けていました。次のとおりです。 A2: =IF(WEEKDAY(DATE(A1,B1,1),2)=6,DATE(A1,B1,3),IF(WEEKDAY(DATE(A1,B1,1),2)=7,DATE(A1,B1,2),DATE(A1,B1,1))) B2: =IF(WEEKDAY(A2+1,2)=6,A2+3,IF(WEEKDAY(A2+1,2)=7,A2+2,A2+1))

moby2002
質問者

お礼

お見事です。早速利用させていただきました。 まだまだ工夫が足りなかったようです。 ありがとうございました。

その他の回答 (4)

noname#204879
noname#204879
回答No.4

WORKDAY関数を使わない方法です。ただし、祝日も表示します。 1.セル A1、B1 にそれぞれ数値 2007、5 を入力(2007年5月の意味) 2.セル A2、B2 に次式を入力して、これらを“ユーザー定義”で d   に書式設定 3.セル B2 を右方にズズーッとW列まで複写 4.“ユーザー定義”で aaa に書式設定したセル A3 に式 =A2 を入力   して、これを右方にズズーッとW列まで複写 5.範囲 U2 を選択して、次の[条件付き書式]に設定   数式が   =MONTH(U2)<>$B$1   フォント色 白 6.セル U2 を[コピー] 7.範囲 U2:W3 を選択した後、[編集]→[形式を選択して貼り付け]を   実行して、“書式”だけに目玉を入れて[OK]をクリック

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.3

>31日がズラーっと横に並んでいる予定表 が判りにくい。誤解される。 ーー 2006 12 2006/12/1 2006/12/4 2006/12/5 2006/12/6 2006/12/7・・・ 金 月 火 水 木 のようなのをお望みなら Sub test01() Range("B3:AE4").Clear y = Range("A1").Value m = Range("B1").Value endmon = DateSerial(y, m + 1, 1) - 1 strtmon = DateSerial(y, m, 1) j = 2 For i = strtmon To endmon If Not (Weekday(i) = 1 Or Weekday(i) = 7) Then Cells(3, j) = i Cells(4, j) = Format(i, "aaa") j = j + 1 End If Next i End Sub を毎月実行するようにすれば良い。 第3、4行の書式はユーザー定義のd、右詰めなど工夫してください。 A1,B1の値(年月)の変化で、上記を実行するイベントプロ化はすぐできます。 シェイプ図形にこのマクロを登録してクリックするのも良い。 関数ではセル幅を変えたり、セル(列行)を表示したりしなかったり 左右できません。値だけセットできるだけ。 #2のご回答の、WORKDAYを使うしかない。これとてマイクロソフトが 組んでくれたプログラムみたいなもので、関数の中では異色の関数ですね。 例えば(B列からはじめるとして)D列(土日だけ休みとして、第3営業日)に、その月の場合、どの日が来るかを関数式で計算するのが (このタイプが関数は不得意)難しい。良いアルゴリズムが有りますかね。 ユーザー関数(VBA)を組めばできそうだが、関数であってないようなもの。

moby2002
質問者

お礼

>>31日がズラーっと横に並んでいる予定表 >が判りにくい。誤解される。 どの辺りが誤解されやすかったでしょうか?? なるべくやさしいやり方でということで、今回は別の 方法で作成することになりました。

  • mshr1962
  • ベストアンサー率39% (7418/18948)
回答No.2

まずエクセルで「ツール」「アドイン」「分析ツール」にチェックがない場合はチェックしてください。 場合によっては、CD-ROMの挿入を求められるかもしれません。 A1=2006,B1=12と年月を入力 C1=WORKDAY(DATE($A$1,$B$1,0),COLUMN()-2) としてセルの書式設定の表示形式をユーザー定義で D としてOKする。 上記を右方向にドラッグでコピーすれば、土日を除いた日付が表示されます。 祝日も除きたい場合は、別途表を作成して日付(年月日)をまとめてください。 C1=WORKDAY(DATE($A$1,$B$1,0),COLUMN()-2,祝日の範囲) で除けます。 ※月によって列数が変わるので変更が必要ですが、面倒ならC1移行のセルに 書式-条件付き書式で「セルの値が」「次の値より大きい」「=DATE($A$1,$B$1+1,0)」 として背景色と同じ色のパターンにすれば表示されません。

moby2002
質問者

お礼

営業日を出す関数なんてあるのですね~ 勉強になりました。 申し訳ありませんが、今回は別の方法で作成しました。 (自分以外のPCで利用する可能性があるため) ありがとうございました。

  • megane110
  • ベストアンサー率59% (41/69)
回答No.1

すみません、私はOfficeは素人なのですが、検索したらこんなのがありました。 http://www.atmarkit.co.jp/fwin2k/win2ktips/291autoclndr/autoclndr.html 少しいじればご希望のものが作れるのではないでしょうか。

moby2002
質問者

お礼

さっそくありがとうございます。 このページは調べました。こういったカレンダーとは異なるのです。 横一列です。さらに、土日を表示したくないのです。 (完全に消すか、幅を小さくして太い線とみなす)

関連するQ&A

  • エクセル 横カレンダー セルの色付けについて

    一ヶ月間分のカレンダーで日付をタテに組んだ時、条件付書式で日曜祭日のセルの色を行単位で色づけ出来るのですが、日付をヨコに組んだ時は、セルの色を列単位で設定するにはどうすれば良いのでしょうか。 会社のカレンダーが従来よりヨコ組みなので出来れば現状のまま、セルの色付けをしたいのですが…。どなたか教えてください、宜しくお願いいたします。

  • エクセルでカレンダーを作ったのですが

    長文で分かりにくいかもしれませんがよろしくお願いします 任意の月であ~おの5種類のチェックを行ったか?というカレンダーを作りました あ~おの欄にはそれぞれチェックした日付が入り、週単位で管理します(ひと月はだいたい5週×5チェック分のセルに分けています) *例*6/21なら6月の第4週の欄が塗りつぶしされる weeknum関数でその週を固定し、指定のセルに条件付き書式で色を付けるように作りました *例*B1=weeknum(A1) A1に6/21と入れると26週目、条件付き書式にはB1のセルに「数式」で=A1=26の時青に塗るみたいに これで一応うまくは動いていました ところが作ってみてわかったのですが、例えば翌週の6/30の場合27週、7/1も27週となりかぶってしまう為、塗り分けられるのが2箇所になってしまうのです そこで新たに month関数とその月の第何週かを導く関数を使用し、上記6/21なら64というような数字ができるようにしました(これでかぶりがないと思いまして。。) *=MONTH(A1)&CEILING((DAY(A1)+7-WEEKDAY(A1))/7,1) ところがこの式でだした数字だと条件付き書式では反応なし。 &を使わず分解して改めて他のセルで合体させてもダメ、=〇〇にしてもダメ 試しにmonth関数のみにすると動きました(もちろん導きした数字は月のみなので役に立ちません) 難しい条件式なら動かないという仕様ならわかるのですが、=〇〇(任意のセル参照)でも動かないっていうのがどうにもわかりません (*条件付き書式は何かシビアな様なので新しくシートを作ってもみましたがやはりダメでした) これは何かあるのでしょうか? 何か動かすよい知恵はないでしょうか? P.S. 結局一番やりたいことは ひと月、週×5チェック分の欄に日付を入れたら綺麗に振分られるというのが出来れば いいので上記のようなやり方をしなくてもという方法があれば教えてください

  • Excelでのカレンダー作成について

    Excelでカレンダー(1カ月分)を作っているのですが、祝日に色を付けるのがどうしてもうまくいきません。 祝日の日付を入れたセルを用意したのですが、1つ関数につき1日分しか色をつけれませんでした =COUNTIF((1),(2))>=1 (1)祝日の日付を入れた複数の範囲のセル (2)カレンダーの日付のセル[1日分] これでやると1カ月分すべてのセルに対して1日ずつ条件を入れなければならないです。 (2)で1カ月分の日付の範囲をすべて選択してみたのですが、うまく表示されませんでした(>_<) どのような関数をつかえば、1カ月分すべての祝日の色を変えることが出来るでしょうか? 回答お願いしますm(_ _)m

  • エクセル カレンダー

    エクセルのカレンダーついて教えて下さい。 B1 西暦 C1月日 B9 日 月 火 水 木 金 土 B10 ~ H12 B16~ H12 B18~ H12 B20~ H12 上記4段に日にちの数字のみ(1 2 3 4) 入力になります。 表は一ヶ月単位 表のレイアウトは横 B1 西暦 C1月日 に入力をしたら、日にちが自動で反映されるように、 したいのですが、詳しい方計算式を教えて頂けますでしょうか?  宜しくお願い致します。  

  • Accessでカレンダー付き日記作成

    はじめまして。 Microsoft Access2000を使って日記帳を作りたいのですが、よくWebサイトにあるような感じのカレンダーと横に日記内容があるようにしたいと思っております。 カレンダーには日記が記入してある日はマークが付いており、土日祝日は色がついていて分かるというような感じです。 Accessのカレンダーコントロールで、そのようなことはできるのでしょうか? もしサンプルなどがあったら教えて頂けると幸いです。 どうぞ宜しくお願い致します。 (OS:Windows2000)

  • エクセル2000でカレンダーをつくりたいのですが・・。

    エクセル2000を使って1年分のカレンダーを作りたいと考えています。土日は条件付き書式を使って曜日の色を変えることができたのですが、祝日はどのような関数または命令をあたえれば検索または表示を変えることができますか。何か簡単な方法があれば教えてください。

  • ●エクセルでカレンダー作り

    ●エクセルでカレンダーを作って居ますが 2008年3月で・・23日と30日と・・・24日と30日のセルに斜線を引いて 数字を入力したいのですがうまく出来ません。 やり方を教えてください。

  • Excelのカレンダーについて。

    Excelカレンダーについての質問です。 Excel2010を使用しています。 seet1にカレンダーを作りました。 セルに、それぞれ年と月を入力すると、その年月の日付と曜日が縦に表示されるように設定しました。更に日付・曜日の横に予定を書き込めるようにレイアウトしました。 しかし、このままだと年と月を変更すると、日付・曜日は変更されますが、予定の部分はそのままです。年と月を変更すると、日付だけでなく、予定の部分も変更できるようにするにはどうしたらよいでしょうか? また、複数の人のカレンダーを管理するようにしたいです。 seet2に、番号と氏名の組み合わせのメンバーリストを作っています。 seet1のセルに番号を入力すると別のセルに氏名が表示されるようにしています。 番号入力し、氏名を変更すると、カレンダーもその人用に変更できるようにするにはどうすればよいでしょうか? 色々検索してみたのですが、これというものが見つからず、質問させて頂いております。 また、わかりづらい文章となっているかもしれません。すみません。 ご回答よろしくお願い致します。

  • アクセス2003のカレンダー使用について教えてください。

    アクセス2003のカレンダー使用について教えてください。 選択クエリがレコードソースの帳票フォームがあります。日付を入力して、その日付のレコードのみ抽出するようにいているのですが、これをカレンダーの日付と連動させて、そのフォームを開いたら自動でその日付のレコードのみ抽出できるようにしたいです。マクロを使って(値代入)ためしてみたのですが、うまくできませんでした。カレンダーはメインフォーム上にあり、別フォームでは簡単に値代入できています。ただ、選択クエリのように、抽出条件のところには代入は無理なのでしょうか?どなたかよろしくお願いいたします。。。

  • エクセルのマクロでこんなことできませんか?

    「あるひにちの横のセルに○印を入れると5日後の横のセルに△印が記入されるマクロを作りたいのです。」 ただし・・・。 その「5日」とはは「5営業日後」つまり土日や祝日を除いた5日なんです。 土日は条件付書式とかで色をつければ土日の認識ってできないのですか? その場合祝日は手動で色をつけようと思います。 それって無理ですか? VBAとかいうのを使わないとダメですか? 何か案がありましたら私でもわかるように詳しくおねがいします。

専門家に質問してみよう