1

このコードを使用して、VB6 フォームのすべてのコントロールを空にしようとしています

Public Sub ClearControls(frmName As Form, TagName As String)
Dim ctl As Control
For Each ctl In frmName.Controls
If ctl.Tag = TagName Then

If TypeOf ctl Is TextBox Then
ctl.Text = ""
ElseIf TypeOf ctl Is ListView Then
ctl.ListItems.Clear
ElseIf TypeOf ctl Is ComboBox Then
ctl.Clear
ElseIf TypeOf ctl Is OptionButton Then
ctl.Value = False
ElseIf TypeOf ctl Is DTPicker Then
ctl.Value = Date
ElseIf TypeOf ctl Is Label Then
ctl.Caption = ""
ElseIf TypeOf ctl Is CheckBox Then
ctl.Value = 0
End If

End If
Next
End Sub

コンボボックスとリストビューをチェックすると、次のエラーが表示されます

「モジュールは有効なタイプではありません」

助言がありますか?

4

1 に答える 1

2

またはと呼ばれるコード モジュール (クラス、フォーム、.BAS ファイル、ユーザー コントロール) がありますComboBoxListView?

あいまいにならないように、名前を完全に修飾してみてください

ElseIf TypeOf ctl Is VB.ComboBox Then 

また、コードの実行が問題行に達したときよりも、コンパイル エラーについてすぐに通知される方がはるかに優れているため、VB6 オプションの [オンデマンドでコンパイル] のチェックを外すことをお勧めします。

于 2012-12-12T13:55:15.760 に答える