• ベストアンサー

エクセルにてカレンダー自動日付入力

Noubleの回答

  • ベストアンサー
  • Nouble
  • ベストアンサー率18% (330/1783)
回答No.11

基本当年当月表示で相対的に一ヶ月後とか1ヶ月先とかに簡単操作で変えられ 1クリックで全て非表示にできるというものでも構わないでしょうか? こういうものを作ってみました 以下の「書式設定→」と書かれているところは 前回同様セルを右クリックして現れるメニュー内より「セルの書式設定」を選択し 「セルの書式設定」ウインドウを表示させて 「表示形式」タブ内、左方の「分類」一覧より「ユーザー定義」を選択する 同タブ内、右方にある「種類」下方の入力欄に「→」以降の文字を入れることにより設定を行ってください ではいきます まずエクセルのウインドウ情報の「表示」プルダウンメニュー内「ツールバー」から「フォ-ム」にチェックが入っている状態にしてください 此で「フォーム」ツールバーが表示されている状態だと思います A1:G2を選択して書式設定→"";"";"";"" 先程の「フォーム」ツールバーより「スピンボタン」を選択 カーソルが大きい十字に変わるのでD1の右側でクリック すると▲と▼が複合した「スピンボタン」が現れますので 此を右クリックして「コントロールの書式設定」を出します 「サイズ」タブから高さ・幅共に0.6を入力 「プロパティー」タブから「セルに合わせて移動するがサイズ変更はしない」を選択 「コントロール」タブから 「現在値」に13 「最小値」に0 「最大値」に25 「変化の増分」に1 「リンクするセル」に$D$1 「3-D表示」にチェックを入れて 右下方の「OK」ボタンで確定させて テキストテキストボックス内の余分な文字を削除後D1の右側に配置してください 同様に 先程の「フォーム」ツールバーより今度は「チェックボックス」を選択 カーソルが大きい十字に変わるのでD1の右側でクリック すると四角い枠の例の「チェックボックス」が現れますので 此を右クリックして「コントロールの書式設定」を出します 「色と線」タブより 「塗りつぶし」は塗りつぶしなしに 「線」の項目「色」も線なしに 「サイズ」タブから高さ・幅共に0.6を入力 「プロパティー」タブから「セルに合わせて移動するがサイズ変更はしない」を選択 「コントロール」タブから 「値」をオフに 「リンクするセル」に$E$1を入力 「3-D表示」にチェックを入れて 右下方の「OK」ボタンで確定させて テキストテキストボックス内の余分な文字を削除後E1の左側に配置してください B5をクリックし「データ」プルダウンメニューから「入力規則」 開いた「データの入力規則」ウインドー内の設定タブ中程の「入力値の種類」下方のプルダウンメニューより「リスト」を選択 選択することにより現れる「元の値」の下方の入力欄に 「月,火,水,木,金,土,日, 」と入力(注、入力時に「」は省く、最後は凵(空白)を入力) 最下方の「OK」ボタンを押し確定させる F1に1を入れ 書式設定→"調整値";"調整値";"調整値";"調整値" G1に  =IF(E1,"",MOD($A$2-"2005/1/1"+$F$1,12)) と入力 A1に  =IF($E$1,"",DATE(YEAR(TODAY()),MONTH(TODAY())+D1-13,1)) と入力し 書式設定→[$-411]ggge"年度" B2に  =IF($E$1,"",TEXT(A1,"mm")&"月3勤勤怠表") と入力し 書式設定→@ A2に  =IF($E$1,"",DATE(YEAR(A1),MONTH(A1),1)) と入力 B2に  =IF($E$1,"",DATE(YEAR(A1),MONTH(A1)+1,1)-1) と入力 C5:H5を範囲選択し、数式  =LOOKUP(MATCH(B3,{0,"","月","火","水","木","金","土","日"},0),{1,2,3,4,5,6,7,8,9},{"","","火","水","木","金","土","日","月"}) と記入、「CONTROL」+「ENTER」で確定 A6:A35を範囲選択し、数式  =IF($E$1,"",CHOOSE(MOD(ROW()-2,5)+1,"A","B","C","D",IF(ISNUMBER(H1),H1,-1))) と記入、「CONTROL」+「ENTER」で確定 書式設定→"";"";"";@"勤" B6:H35を範囲選択し、数式  =IF($E$1,"",IF(ISNUMBER($A6),IF(A6<0,IF(WEEKDAY($A$2)=MAX(COUNTIF(B5,{"日","月","火","水","木","金","土"})*{1,2,3,4,5,6,7}),1,-1),IF(A6<DAY($B$2),A6+1,-1)),IF(OFFSET(B6,-MOD(ROW()-1,5),0,1,1)<1,"",CHOOSE(MOD(OFFSET(B6,-MOD(ROW()-1,5),0,1,1)+MOD(ROW()-1,5)*3+$G$1,12)+1,3,3,3,"公",2,2,2,"公",1,1,1,"公")))) と記入、「CONTROL」+「ENTER」で確定 書式設定→0;"";"";@ 2~4行目を非表示にしたら完成です。 使い方ですが B5のセルをクリックするとセルの右に「▼」が現れますので それを更にクリックします するとプルダウンメニューが現れますので その中よりカレンダーとして表示させたい先頭の曜日をお選びください D1が13の時は当月のカレンダーを表示しています 「スピンボタン」の▲をクリックする度にこの数字が1ずつ増え 翌月・翌々月… とカレンダー表示する日時が 1月毎に未来に進んでいきます 逆に 「スピンボタン」の▼をクリックする度にこの数字が1ずつ減り 先月・先々月… とカレンダー表示する日時が 1月毎に過去に遡っていきます。 表示を消す際は E1に配した「チェックボックス」にチェックを入れて E1とB5の内容を「DELETE」キーで消せば 配したボタンは残りますが ほぼ全て表示が消えます。 導入当初や大型連休の前後では スケジュールがずれると思いますが、 そう言う時は0~11の範囲で何か数値を入れて頂ければ、 1増える毎に順次スケジュールがずれますので 此で調整してください。 後、何か不都合などありましたら お申し付け頂けましたら順次対応させて頂きます。 忌憚なくお申し出ください。 ところで、 作ってみたものの、 余り効果を感じません… ヾ(ーー;) カレンダーは週単位では最大6週必要ですが 1週に3勤4交代制ですから日付行と併せて5行必要となります 詰まり諸々で33~35行ほどは絶対に必要! と、なると思うのですが、 35行まで使うということは フツーに縦一列に日付を並べても収まってしまいます (-_-) 此では見た目だけの問題となってしまいますが 見た目すら改悪となってしまってます。 (~ ~;)ヾ

nobuhisa1954
質問者

お礼

 こんな大作をありがとうございます><作成することができました。エクセルすごい詳しい方なんですね。尊敬します^^インストラクターの資格は持っておりますが、こんな複雑なことはできませんので。エクセルのさらなる勉強をしないといけないなって思います^^  作成に当たりいろいろたご苦労おかけいたしました。たいへん助かりました。ありがとうございます^^

関連するQ&A

  • カレンダーから日付を入力

    エクセル2003です。 日付の入力をカレンダーをドロップダウンさせてできるようにしたいんですが、ご指導お願いします。

  • エクセルの日付自動入力について教えてください。

    エクセルの日付自動入力について教えてください。 商品の出荷情報をエクセルで作成しています。毎週月~土曜日の顧客管理を作成しており、 商品を出荷した日付が自動的に更新されるようにしたいです。 例えば、 現在今週の月曜出荷の情報だと、A1セルに6/21と手入力し、 21日が過ぎた時点(翌日22日に)に翌週の日付6/28という日付を手入力(A1セルに上書き)している状況です。この翌週の日付を自動的に同じA1セルに上書きという形で反映させることは可能でしょうか。 説明が分かりにくくて大変申し訳ございません。 データが大量にあるため、なるべく自動的に反映させたいです。 関数入力でこのようなことができるのか、ご存知の方宜しくお願い致します。

  • Excelで日付入力用カレンダーを作るには

    お世話になります。 従来のファイル(Excel 2007)を Office 2010 の環境で開くと、マクロで作成した「日付入力用のカレンダー」が表示できませんでした。 このパソコンに Access 2007 をインストールしました。 その結果、このファイルは正常にカレンダーを表示し、日付を入力できるようになりました。 Excel 2010 の新規ファイルに、従来のファイルの VBA をコピーして、貼り付けました。 ところが、この新規ファイルでは、カレンダーを表示できず、別添のようなメッセージが表示されます。 この原因を教えていただければ有難いです。 なお、そのVBA は次のようなものです。 [各ワークシート] Option Explicit Sub カレンダーON() ActiveSheet.Calendar1.Visible = True End Sub Sub カレンダーOFF() ActiveSheet.Calendar1.Visible = False End Sub [標準モジュール] Option Explicit Private Sub Calendar1_DblClick() ActiveSheet.Range("A3", "C3") = Calendar1.Value End Sub よろしくお願いします。

  • エクセル2007でカレンダーの作り方

    以前、同じカレンダー作成のことで質問させていただいたものです。 先輩方に手本を示していただき、「よし、やるぞ!」と慣れないエクセルを使ってカレンダー作りをしていたのですが・・ 1 表題の両横の「飾り」。これはどうやってつけますか? 2 段組みを2段にして、左段にカレンダー、右段にスケジュールを書くやり方。 3 網掛けのやり方 4 カレンダーの日付をうまく入力するコツ(日付をいちいち入力すると、時間がかかって) がわかりません。 ワード2007をベースに、カレンダーだけエクセルでやろうと考えています。 よろしくお願いします!

  • Excelの日付の入力でカレンダーを表示する方法

    エクセルのセルに日付を入力する際に、カレンダーを表示してそれをクリックして入力する方法があれば教えてください。

  • 【エクセル】日付を、その都度、自動入力するには?

    タイトルの件、質問いたします。 下記の図の【日付】の項目に 通常は、手入力で、日付を入力します。 この作業を、もう少し、少ない工数で、自動入力できないでしょうか?? あくまでも、空白セルに、そのつど、入力します。 入力した日付は、固定で、変わらないようにしたいです。TODAY関数のようにはならないように したいです。 ご存知の方、いらっしゃいましたら、宜しくお願いします。

  • アクセス カレンダーから日付の自動入力。

    アクセスの中でcmdをクリックしたら、カレンダーが立ち上がるようには作成できました。この後の処理なのですが、まず、開いた時点で、今日に日付がきているようにしたいのです。今日だったら、4月12日の項目が凹んで見えればOKです。で、日付のトコをクリックしたら、テキストボックスに平成19年4月12日と表示されるようにしたいのです。どこにどのように書き込めばいいのですか?? □(txt_日付) □(frm_cal)←をクリックしたら、カレンダーが表示され、日にちをクリックしたら、txt_日付に日付が表示されるようにしたいのです。

  • エクセルでカレンダー表示

    エクセルのセルを選択すると、カレンダー(月単位)が表示されクイックした日付を入力したいのですが、機能としてあるのでしょうか? ご存知の方、教えてください。

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

    よろしくお願いします。 エクセル2002を使っています。 一枚の用紙に1月から12月までが載ったカレンダーを 作りたいと思っています。 おおよそのデザインは以下の http://www.benri.com/calendar/2003.html と同じ様にしたいと思っています。 ただ、可能であれば年数を入力しただけで月の日付が表示されるように したいと思っています。 この場合、どのような数式をどのように使えばよろしいのでしょうか? よろしくお願いします。

  • エクセルで日付けの連続入力

    エクセルで日付けの連続入力をしたいのですが… 例えばカレンダーを作るのに1.2.3と1つ1つ入力しなくてもやる方法があるみたいで…同じく曜日も… 何方か教えていただけないでしょうか?