
Excel2003を使って、(既に用意されている)カレンダーから該当日を選択し、
対象のセルにその日付を反映(代入)させる方法について教えてください。
例えば、A1セルに「終了予定日」とあり、隣りのB1セルに日付を入力する際には、
まず(用意されている)カレンダーを表示させ、そこから該当日(2014.3.31)を選択後、
そのままその日付をB1セルに反映(代入)できるようにしたいのですが、
何かいい方法はありませんでしょうか?
他の質問箱も見て、挿入→オブジェクト→カレンダーコントロール11.0など、
色々試してみたのですが、うまくいきませんでした。
お分かりになる方がおられましたら、分かりやすいご説明よろしくお願いします。

No.4ベストアンサー
- 回答日時:
補足につきまして・・・
「B1選択時以外はカレンダー非表示」と
「日付入力後、B2セルを選択」の記述を追加しました。
コードを以下のものに入れ替えてみてください。。。
Private Sub Calendar1_Click()
Range("B1").Value = Calendar1.Value
Calendar1.Visible = False
Range("B2").Activate
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("B1")) Is Nothing Then
Calendar1.Visible = True
Else
Calendar1.Visible = False
End If
End Sub

No.3
- 回答日時:
>(上記の“カレンダー”とは、カレンダーコントロール
>11.0で表示したものを指しているのでしょうか?)
その解釈で大丈夫です。。
2003でのプロパティシートの出し方は、以下のURLにありました。
http://juen-cs.dl.juen.ac.jp/html/office2003-200 …
「■コントロールツールボックス ツールバー|プロパティ」
の部分を参照下さいm(_ _)m
この回答への補足
もう一つ要望があります。
B1セルに日付が登録された後、カレンダーが
非表示となったら、カーソルをB2セルに移動させて
おきたいのですが、こちらの操作方法についても
ご教示願います。
色々とアドバイスいただき、ありがとうございます。
上記の手順で操作したところ、ほぼ希望通りの形に
なってきました。
あと一つ要望ですが、B1セルにカーソルを持っていき、
カレンダーが表示されるのはよいのですが、何も日付を
選択せずに、B1セルを離れた場合にもカレンダーが
非表示になるような設定にしたいのですが。
たびたびの質問ですみません。。。

No.2
- 回答日時:
スペースを取ってしまう件に関しては、確かに懸念しておりました^^;
以下ではデフォルトで非表示設定→B1を選択するとカレンダー表示→日付クリックで日付反映/再度非表示、という流れになっています。
このような感じで如何でしょうか。。
1)カレンダーのプロパティシートを表示する。
(2007の場合、カレンダーの上で右クリック→プロパティで表示できますが、2003が手元に無い為同様の操作で出来るかはちょっと未確認です)
2)「Visible」の項目が「True」になっていると思うので「False」にする。
(これでデフォルト非表示になります)
3)最初の回答同様に「コードの表示」を選択し、以下の7行を記述する。
Private Sub Calendar1_Click()
Range("B1").Value = Calendar1.Value
Calendar1.Visible = False
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("B1")) Is Nothing Then Calendar1.Visible = True
End Sub
(Calendar1_Click内に選択後非表示にする記述を追加、またB1セルを選択した場合に表示させるイベントを新たに追加しています)
※最初の回答にある3行の記述が残っていたら削除して下さい。
またカレンダーの位置はデザインモードで表示させたい箇所に移動させておくと良いかと思います。。
たびたびのご回答、ありがとうございます。
上記1)項の部分をExcel2003でどのように
操作すればよいのかがどうしても分かりません。
(上記の“カレンダー”とは、カレンダーコントロール
11.0で表示したものを指しているのでしょうか?)
あと一歩なのですが。。。
他にも何か方法はありませんでしょうか?

No.1
- 回答日時:
そのままカレンダーコントロールを使用するのであれば、デザインモードの状態で(カレンダーを挿入した時点で既になっているかとは思いますが)、カレンダーの上で右クリック→コードの表示、で、出てきた入力エリアに
Private Sub Calendar1_Click()
Range("B1").Value = Calendar1.Value
End Sub
の三行を記述し、右上の×でエディタを終了→デザインモードを解除しカレンダー内の日付をクリックしてみて下さい。
早速のご回答ありがとうございました。
補足部分も含めて、追加質問させていただきますが、
上記のやり方だと始めからExcelのブック上にカレンダー
が表示されており、その分場所を取ってしまいます。
できれば、B1セルにカーソルを持って行った時だけ
カレンダーを表示し、日付選択後はカレンダーが非表示に
なるような形にしたいのですが、何かよい方法はあります
でしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
午前am 午後pm 夕方や夜の略号は?
-
エクセルの付属テンプレートで...
-
お祝い電報を仏滅に打電しても...
-
彼女に口だけは嫌と言われても...
-
Googleカレンダーのマイカレン...
-
万博に行って入場する時に 障碍...
-
カレンダーの7の倍数について...
-
カレンダーの反りをとるには?
-
基づいてと基づくの使い分け
-
木曜日と水曜日を間違えた人いる?
-
システム手帳 A5サイズ コード...
-
スケジュール感って何?
-
Outlook予定表月表示で「今日」...
-
スケジュールノートのこの部分...
-
Excel2003(カレンダー)を使って...
-
Excel2016 vbaのカレンダー
-
来年以降のスケジュール管理
-
Power Pointで1日のスケジュー...
-
定年までのカウントダウン。よ...
-
googleカレンダー メインカ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
午前am 午後pm 夕方や夜の略号は?
-
エクセルの付属テンプレートで...
-
日曜日において「来週の水曜日...
-
万博に行って入場する時に 障碍...
-
スケジュールを切る とはどうい...
-
システム手帳 A5サイズ コード...
-
電車内は満席でスマホを持ちお...
-
定年までのカウントダウン。よ...
-
Outlook予定表月表示で「今日」...
-
outlookの、カレンダーとエクセ...
-
基づいてと基づくの使い分け
-
お祝い電報を仏滅に打電しても...
-
Excel2016 vbaのカレンダー
-
カレンダーの7の倍数について...
-
こんなご経験された方は居られ...
-
スケジュール感って何?
-
googleカレンダー メインカ...
-
Googleカレンダーのマイカレン...
-
先週・今週と言うよう週の切れ...
-
その日が土曜日だった場合、明...
おすすめ情報