天使と悪魔選手権

Worksheets("Sheet1")に60個程度のTextBoxとComboBoxが並んでいます。(ユーザーフォーム上ではなく、シート上に配置)

この各ボックスに入力された値を、ファイルを開いた時(OpenEvent)で入力されている値を消したいのですが、どうしたらよいでしょうか?(終了時でも構いません)

宜しくお願い致します。

A 回答 (2件)

Sheet1上にある《全ての》TextBoxとComboBoxの表示値をクリアするものとします。


各TextBoxとComboBoxの名前は、デフォルドの名前の共通部("TextBox" & "ComboBox")が、含まれている
ものとします。

つまり、TextBox1~60 とか、ComboBox1~60 になっているとすると次のような感じで如何でしょうか。
名前が全然違う場合は、適当にいじってください。

ThisWorkbookクラスのコードウィンドウに記述します。

Private Sub Workbook_Open()
Dim Obj As OLEObject
For Each Obj In Worksheets("Sheet1").OLEObjects
  If InStr(Obj.Name, "TextBox") + InStr(Obj.Name, "ComboBox") > 0 Then
    Obj.Object.Value = ""
  End If
Next Obj
End Sub
    • good
    • 0
この回答へのお礼

ありがとうございます。
残念ながら、定型的な名前ではありません。しかし、大変参考になりました。

お礼日時:2004/07/23 13:13

Private Sub Workbook_Open()


 Worksheets("sheet1").TextBox1.Text = ""
 Worksheets("sheet1").TextBox2.Text = ""
 '
 '
 Worksheets("sheet1").ComboBox1.Text = ""
 Worksheets("sheet1").ComboBox2.Text = ""
 '
 '
End Sub

で、とりあえず消えます。
    • good
    • 0
この回答へのお礼

消えました。ありがとうございます。

お礼日時:2004/07/23 13:13

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


おすすめ情報