• 締切済み

エクセルのユーザーフォームの入力状況

よろしくお願いします。 エクセル2003でユーザーフォームを用い、入力フォームを作りました。 フォームを閉じてもう一度開くとそれまで入力していた内容が全部リセットしてしまい、全て空白になってしまいます。 ユーザーフォームの入力状況をほぞんすることはできるのでしょうか? 一度フォームを閉じても、もう一度開いたときに以前の入力内容が表示されている状態が理想です。 よろしくお願いします。

みんなの回答

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.3

こんばんは。 人によっていろんなやり方があるとは思います。 UserForm.Hide なら、値は残っていますが、例えば、私は、シートに書き出すほど長期には置くつもりはない場合は、以下のように、標準モジュールにグローバル変数を置いて、そこに置くという方法を取りますね。ブックを閉じたら残らないけれども、開いている限りは、値は残っています。 '標準モジュール Public MyVal As String '------------------------------- 'UserForm モジュール Private Sub UserForm_Initialize()  TextBox1.Value = MyVal End Sub Private Sub UserForm_Terminate()  MyVal = TextBox1.Value End Sub

  • zawax
  • ベストアンサー率50% (3/6)
回答No.2

入力後、フォームをunloadではなく、非表示(visible=false)にすれば消えずに残ります。。 が、Excel自体を閉じると当然消えてしまいます。 何度開いても前回入力したものを残したい場合は marbinさんの仰るとおり、どこかに保存するしておいて、 フォームをloadする際に保存データを読み込むように するしかないですね。。

shiokara21
質問者

お礼

回答ありがとうございます。 やはり他の場所に保存→読み込みとするしかないのですね。 少々面倒ですがそのようにやってみます。 ありがとうございました!

  • marbin
  • ベストアンサー率27% (636/2290)
回答No.1

セルか外部ファイルに保存しておき、次回ユーザーフォーム 起動時に保存場所から読み込むようにするしかないと思います。

shiokara21
質問者

お礼

回答ありがとうございます。 やはり他の場所に保存→読み込みとするしかないのですね。 少々面倒ですがそのようにやってみます。 ありがとうございました!

関連するQ&A