フォーム1にTextbox1とTextbox2、フォーム2にTextbox1とTextbox2…フォーム50にTextbox1とTextbox2、のようにTextbox1とTextbox2があるフォームが約50個あり、このすべてのTextboxでダブルクリックすると同じカレンダーフォームが表示されるようにしています。
※フォーム名は仮です。
Textbox1をダブルクリックして表示させたカレンダーフォームで日にちを選択(ボタンをクリック)すると、Textbox1に、Textbox2をダブルクリックして表示させたカレンダーフォームで日にちを選択すると、Textbox2に日にちが入力されるようにすべてのフォームでやりたいです。
どのフォームのテキストボックスから選択されたのか、1つのカレンダーフォームで認識して選択したフォームのテキストボックスへ日にちを入力することは可能でしょうか。
vbaは初心者なので、簡単なvbaでできるなら助かります。
win7でexcel2007で作成しています。
No.1ベストアンサー
- 回答日時:
以下でどうですか。
1. 標準モジュールに、呼び出し側のユーザーフォーム名を保存するための変数をPublicで用意する。
2. フォームnのTextboxのダブルクリックイベントで、カレンダーフォームを表示させると
同時に1.の変数にフォームn名を保存する。
3. カレンダーフォーム上で日付が選択されたら1.の変数の内容から日付を書き込むユーザーフォームを
指定し、日付を書き込む。
更にいえば、以下の処理を考慮する必要があると思います。
・あるフォームからカレンダーフォームを開いている間は、他のフォームから開けないようにする。
・3の時点では、呼び出し側のフォームが閉じていないかを確認した上で日付を書く。
参考:
http://officetanaka.net/excel/vba/tips/tips103.htm
http://officetanaka.net/excel/vba/tips/tips113.htm
https://detail.chiebukuro.yahoo.co.jp/qa/questio …
ありがとうございます。
フォーム名を変数に格納しての動作はできました。
ただ、コントロール名も変数に格納して動作させたいです。ダブルクリックしたのが、Textbox1なのかTextbox2なのかも判断できたらなと思ってます。
No.2
- 回答日時:
No.1です。
> ただ、コントロール名も変数に格納して動作させたいです。ダブルクリックしたのが、Textbox1なのかTextbox2なのかも判断できたらなと思ってます。
そのまま作成すれば良いのではないでしょうか?
1.Textbox1/2 を判断する変数を用意して、ダブルクリックイベントで1または2を代入する
2.カレンダーフォーム側で、1の変数の内容からTextbox1/2のどちらに書き込むか判断する(IFを使用)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) ユーザーフォーム「frm_基本❶」を立ち上げると新規で入力する行数を右下のNoとして表示しています。 1 2023/03/16 19:02
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- Excel(エクセル) 【vba】日付の形式が勝手に変わってしまう。 1 2022/09/29 10:54
- Access(アクセス) Access 登録ボタンからサブフォームの更新 1 2022/07/22 10:23
- JavaScript フォームが空欄の時にフォームの外をクリックすると、エラーが出るコードを調べています。 1 2023/06/25 11:51
- Visual Basic(VBA) VB.net フォーム 親子 1 2022/07/04 19:00
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
- その他(データベース) Accessフォームからパラメーターで表示したレコードを指定のExcelのセルへ転送する方法について 2 2022/08/22 18:04
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- PHP Content-Typeが機能していない? 2 2022/07/17 11:10
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ExcelVBAのユーザーフォームの...
-
ユーザーフォームを表示中にシ...
-
Hideについて(.NET)
-
Form_Load と Form_Activate の...
-
エクセルVBAのフォームを最...
-
ユーザーフォーム上に現在日時...
-
【VBAユーザーフォームで閉じる...
-
ユーザーフォームのラベルに時...
-
MSGBOXのフォント大きさ変更
-
コントロールの存在確認
-
Microsoft Formsの「個人情報や...
-
VBAでユーザーフォームを再表示...
-
フォームのテキストボックスな...
-
ACCESSのフォーム、開くんです...
-
アクセス2013 フォームが...
-
エクセルのチェックボックスの...
-
ExcelVBAのユーザーフォームでe...
-
ユーザーフォームのテキストボ...
-
クリックイベントなのに、2回ク...
-
フォームのアクティブと非アク...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ユーザーフォームを表示中にシ...
-
クリックイベントなのに、2回ク...
-
ExcelVBAのユーザーフォームの...
-
ユーザーフォームのテキストボ...
-
Microsoft Formsの「個人情報や...
-
ユーザーフォーム上に現在日時...
-
Form_Load と Form_Activate の...
-
モーダルフォームとモードレス...
-
Excelにて、ユーザーフォームで...
-
VBAでユーザーフォームを再表示...
-
【VBAユーザーフォームで閉じる...
-
MSGBOXのフォント大きさ変更
-
VBA(エクセル)のユーザー...
-
Hideについて(.NET)
-
エクセルVBAのフォームを最...
-
コントロールの存在確認
-
ACCESSのフォーム、開くんです...
-
'ユーザーフォーム右上隅の[×...
-
フォームウィンドウを最前面に...
-
ユーザーフォームのラベルに時...
おすすめ情報