ユーザーフォームにテキストボックスとコマンドボタンを配置し、テキストボックスに前回入力した値を表示しようと下記のようにしたのですが、テキストボックスに1以上の数値を入力してもフォームを閉じてから再びフォームを表示したときにテキストボックスには0と表示されてしまいます。このテキストボックスの値を固定することはできないのでしょうか。
Private Sub CommandButton1_Click()
Static number As Integer
number = Me.TextBox1
Unload Me
End Sub
Private Sub UserForm_Initialize()
Static number As Integer
Me.TextBox1 = number
End Sub
No.2ベストアンサー
- 回答日時:
標準モジュール上に変数numberを宣言して
Public number As Integer
ユーザーフォーム上では
Module1.number = Me.TextBox1
Me.TextBox1 = Module1.number
の様にすれば良いと思います。
宣言セクションにStaticを設定することができなかったので、一時的に記憶する方法が分からなかったのですが、Publicで宣言すればよかったのですね。解決しました。ありがとうございます。
No.1
- 回答日時:
前回表示した値と同じものを表示したいなら、その値をどこかのシートのどこかのセルに格納しておいて、そこから取り出して表示する以外にないです。
ユーザーフォームのみでは、解決できません。excelを起動した状態で、ユーザーフォームの起動/停止を行い、前回の状態を表示したいなら、標準モジュールに
public number as Intger
のように登録しておけば、それを使用できます。(excelを終了するとその値は次回起動時には引き継がれません)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) ユーザーフォーム「frm_基本❶」を立ち上げると新規で入力する行数を右下のNoとして表示しています。 1 2023/03/16 19:02
- Visual Basic(VBA) ①ExcelVBAでカレンダーを作り、別のユザーフォームで日付を入力したいのですがエラーになります。 1 2023/02/17 18:39
- その他(Microsoft Office) エクセルのマクロを教えてください。 1 2023/01/27 09:05
- Access(アクセス) Dlookupにエラーがでてしまう 1 2022/10/31 14:35
- Visual Basic(VBA) ユーザーフォームの書き出しで追加のご相談 ユーザーフォームの値をシートに書き出す際、コードが表示され 2 2022/08/05 10:58
- Access(アクセス) チェックボックスにチェックが入った後の挙動 1 2022/08/21 12:39
- C言語・C++・C# C#テキストボックスの文字を配列にいれてその後表示する 4 2022/07/17 04:47
- Visual Basic(VBA) VBA 重複チェック後に値をワークシートに転記する方法を教えてください。 1 2023/03/19 12:43
- Visual Basic(VBA) フレーム内のオプションボタンの選択結果をセルに書き出したい。 図のような預金種目というフレームにオプ 2 2022/07/29 11:12
- Access(アクセス) Accessの参照フィールドの列がずれてしまいます 1 2023/07/19 15:00
このQ&Aを見た人はこんなQ&Aも見ています
-
外出時に「待たせる妻」vs イライラする「待つ夫」は日本だけ?見習いたい海外事情
夫の家事参加に積極的なイメージのある海外でも、同様の事例はあるのか。結婚カウンセラーの佐竹悦子さんに伺ってみた。
-
ユーザーフォームに入力したデータを保持する方法
Visual Basic(VBA)
-
テキストボックス入力データの保持について
Visual Basic(VBA)
-
エクセルでフォーム中のテキスト値の保存方法
Excel(エクセル)
-
-
4
UserForm1.Showでエラーになります。
工学
-
5
ユーザーフォームを表示中にシートの操作をさせるには
Excel(エクセル)
-
6
VBAでユーザーフォームを再表示させたい。
Excel(エクセル)
-
7
エクセルVBAでUserFormを起動した時
Excel(エクセル)
-
8
ユーザーフォームのデータをそのまま保存する方法
Excel(エクセル)
-
9
テキストボックスに入力した値を、次に入れ替えるまで保持させたいのですが、どのような方法があるでしょう
Access(アクセス)
-
10
エクセルVBAでテキストボックスに入力があった場合のみ、ワークシートに転記したい
Visual Basic(VBA)
-
11
VBA コンボボックスで選んだ値を取得するには
その他(Microsoft Office)
-
12
ExcelVBAでテキストボックスの表示形式を小数点第二位まで表示する方法
Visual Basic(VBA)
-
13
前のレコードの値を自動で入れたい
PowerPoint(パワーポイント)
-
14
エクセルVBA ユーザーフォームのTextBoxを日付にしたい
Excel(エクセル)
-
15
VBA:ユーザーフォームのマルチページに色を付けたい。
Word(ワード)
-
16
VBA エンターキーでイベントに入りたい。
PowerPoint(パワーポイント)
-
17
EXCEL VBA セルに既に入力されている文字に文字を追加する
Excel(エクセル)
-
18
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
19
excel VBA ユーザーフォームを消すとTextBoxから反映させたセルの値も戻ってしまう
Excel(エクセル)
-
20
Excel-VBA>コントロールをグレイアウトするには?
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ユーザーフォームを表示中にシ...
-
【VBAユーザーフォームで閉じる...
-
ExcelVBAのユーザーフォームの...
-
ユーザーフォーム上に現在日時...
-
'ユーザーフォーム右上隅の[×...
-
Microsoft Formsの「個人情報や...
-
ユーザーフォームのコピー?
-
ユーザーフォームのテキストボ...
-
MSGBOXのフォント大きさ変更
-
Hideについて(.NET)
-
VBAでユーザーフォームを再表示...
-
エクセルVBA フォーム上でOnkey...
-
ACCESSのフォーム、開くんです...
-
エクセルのフォームをマクロで...
-
Excelにて、ユーザーフォームで...
-
クリックイベントなのに、2回ク...
-
C#で起動時のフォームを非表示...
-
アクセス2013 フォームが...
-
Form_Load と Form_Activate の...
-
フォームウィンドウを最前面に...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ユーザーフォームを表示中にシ...
-
ExcelVBAのユーザーフォームの...
-
クリックイベントなのに、2回ク...
-
Microsoft Formsの「個人情報や...
-
ユーザーフォームのテキストボ...
-
【VBAユーザーフォームで閉じる...
-
モーダルフォームとモードレス...
-
VBAでユーザーフォームを再表示...
-
エクセルVBAのフォームを最...
-
MSGBOXのフォント大きさ変更
-
Form_Load と Form_Activate の...
-
ユーザーフォーム上に現在日時...
-
Excelにて、ユーザーフォームで...
-
Hideについて(.NET)
-
フォームウィンドウを最前面に...
-
コントロールの存在確認
-
VBA(エクセル)のユーザー...
-
'ユーザーフォーム右上隅の[×...
-
エクセルVBA フォーム上でOnkey...
-
ブックをCloseまたはQuitで閉じ...
おすすめ情報