Samuel Cano
Board Regular
- Joined
- Jun 24, 2002
- Messages
- 62
Hola, mi caso es que tengo 50 cuadros de texto los cuales estoy limpiando con la siguiente instrucción
If lstListaDeCuentas = 10 Then '(limpia todos los textboxes)
ufBajas.MultiPage1.Page1.Frame1.txt_A1 = ""
'... (...txt_B2, ...txt_C3, etc., hasta 50)
End If
Como mencioné, los textboxes están contenidos en otros controles con la ruta siguiente:
ufBajas (formulario)
MultiPage1 (control contenedor)
Page1 (control contenedor)
Frame1 (control contenedor)
Textbox (control a limpiar)
La instrucción de limpieza deseo dispararla desde otro formulario.
He probado los siguientes códigos sin éxito y ya me siento confundido:
CODIGO_1:
Dim obj1 As Control, obj2 As Control, obj3 As Control
For Each obj1 In ufBajas.Controls ' multipage
If TypeName(obj1) Is "MultiPage" Then
For Each obj2 In ufBajas.obj1.Controls ' page
If TypeOf obj2 Is Page Then
For Each obj3 In ufBajas.obj1.obj2.Controls ' frame
If TypeOf obj3 Is Frame Then
For Each obj4 In ufBajas.obj1.obj2.obj3.Controls '
If TypeOf obj4 Is TextBox Then
obj4.Text = ""
End If
Next
End If
Next
End If
Next
End If
Next
CODIGO_2:
Dim pPage As Page, fFrame As Frame, cCont As Control
For Each pPage In ufBajas.MultiPage1.Pages
For Each fFrame In pPage.Controls
If TypeName(fFrame) = "Frame" Then
For Each cCont In fFrame.Controls
If TypeName(cCont) = "TextBox" Then
cCont.Text = ""
End If
Next cCont
End If
Next fFrame
Next pPage
Cualquier ayuda será muy agradecida, he revisado la ayuda de excel, he buscado en internet y sigo sin saber como hacer un cliclo que limpie los controles sin tener que declarar la ruta, de cada uno.
Gracias anticipadas.
-Samuel Cano.
If lstListaDeCuentas = 10 Then '(limpia todos los textboxes)
ufBajas.MultiPage1.Page1.Frame1.txt_A1 = ""
'... (...txt_B2, ...txt_C3, etc., hasta 50)
End If
Como mencioné, los textboxes están contenidos en otros controles con la ruta siguiente:
ufBajas (formulario)
MultiPage1 (control contenedor)
Page1 (control contenedor)
Frame1 (control contenedor)
Textbox (control a limpiar)
La instrucción de limpieza deseo dispararla desde otro formulario.
He probado los siguientes códigos sin éxito y ya me siento confundido:
CODIGO_1:
Dim obj1 As Control, obj2 As Control, obj3 As Control
For Each obj1 In ufBajas.Controls ' multipage
If TypeName(obj1) Is "MultiPage" Then
For Each obj2 In ufBajas.obj1.Controls ' page
If TypeOf obj2 Is Page Then
For Each obj3 In ufBajas.obj1.obj2.Controls ' frame
If TypeOf obj3 Is Frame Then
For Each obj4 In ufBajas.obj1.obj2.obj3.Controls '
If TypeOf obj4 Is TextBox Then
obj4.Text = ""
End If
Next
End If
Next
End If
Next
End If
Next
CODIGO_2:
Dim pPage As Page, fFrame As Frame, cCont As Control
For Each pPage In ufBajas.MultiPage1.Pages
For Each fFrame In pPage.Controls
If TypeName(fFrame) = "Frame" Then
For Each cCont In fFrame.Controls
If TypeName(cCont) = "TextBox" Then
cCont.Text = ""
End If
Next cCont
End If
Next fFrame
Next pPage
Cualquier ayuda será muy agradecida, he revisado la ayuda de excel, he buscado en internet y sigo sin saber como hacer un cliclo que limpie los controles sin tener que declarar la ruta, de cada uno.
Gracias anticipadas.
-Samuel Cano.