• ベストアンサー

Excel2003入力規則でカレンダーを表示したい

Excel2003の入力規則で写真の様なカレンダーを表示してクリックしたら日付が代入されるようにしたいです。 どのようにすればできるでしょうか?

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

  • ベストアンサー
回答No.4

面白そうなのでやってみた。for XL2002 コントロールツールボックスツールバーから コントロールの選択ボタンをクリックし、カレンダーコントロールを配置 カレンダーを右クリックしてコードを表示 Private Sub Calendar1_Click()     If ActiveCell.Column = 3 Then ActiveCell = Calendar1.Value     ActiveCell.Select End Sub として C列に入力するようにしてみた。 でも、意外と邪魔。よって、(試行錯誤の末)下記を追加した。 Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Target.Column = 3 Then     Calendar1.Visible = True     Calendar1.Top = ActiveCell.Top + 50 Else     Calendar1.Visible = False End If End Sub コントロールツールボックスツールバーから [デザインモードの終了] なんとか使えるかな。。。

その他の回答 (3)

noname#204879
noname#204879
回答No.3

[No.2]の誤謬訂正 B7: =B7+7 を B7: =B6+7 に訂正します。

noname#204879
noname#204879
回答No.2

》 写真の様なカレンダーを表示してクリックしたら日付が代入されるようにしたい 「写真の様なカレンダーを表示」するには次のようにしたらできます。 でも、カレンダー中の日付セルを「クリックしたら」別セルにその「日付が代入される」方法は私には(不勉強で)分かりません。 添付図参照(Excel 2002 で作成) セル D3、F3 の書式は次のとおり。 D3: G/標準"月" F3: G/標準"年" これらのセルの右側に、[表示]→[ツールバー]→[スピンボタン]を配置して、 [コントロールの書式設定]→[コントロール]において、 D3スピンボタン: 最小値  1、最大値  12、増分 1 F3スピンボタン: 最小値 1900、最大値 2999、増分 1 を、それぞれ設定 B6: =DATE(F3,D3,1)-(WEEKDAY(DATE(F3,D3,1))-1) C6: =B6+1 セル C6 を右側にズズーッとセル H6 までドラッグ&ペースト B7: =B7+7 セル B7 を右側にズズーッとセル H7 までドラッグ&ペースト 範囲 B7:H7 を下側にズズーッと9行目までドラッグ&ペースト B10: =IF(MONTH(B9+14)=$D3,TEXT(B9+7,"d")&"/"&TEXT(B9+14,"d"),B9+7) セル B10 を右側にズズーッとセル H10 までドラッグ&ペースト 範囲B6:H10 を選択して、セルが B6 であることを確認した後で、次の[条件付き書式]を設定 数式が   =MONTH(B6)<>$D$3 フォント色 白

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

入力規則にはそういったモノを表示する機能はありませんので,諦めてください。 #補足 ご質問内容からは外れますので説明はしませんが,入力規則とは無関係にとにかくそういうことをしたいなら,ネットで「Excel カレンダーコントロール」などで調べてみると使える道具の解説が見つかります。確認して自作してみては。

関連するQ&A