Tabulaciones con textbox

22/09/2006 - 10:21 por kusflo | Informe spam
Estimados compañeros de foro mi pregunta es la siguiente:

¿Es posible en Excel 2000 crear varios textbox mediante el cuadro de
controles en una hoja y conseguir que tabulen en un orden determinado?. He
buscado la propiedad adecuada pero no consigo ni que tabulen. Y mucho menos
en un orden determinado. ¿Alguien sabe como lograrlo?. Un saludo y gracias!!

"Saber que se sabe lo que se sabe y que no se sabe lo que no se sabe; he
aquí el verdadero saber." Confucio.
 

Leer las respuestas

#1 Héctor Miguel
23/09/2006 - 05:24 | Informe spam
hola !

... en Excel 2000 crear varios textbox mediante el cuadro de controles en una hoja... que tabulen en un orden determinado?...



suponiendo que los nombres de los textboxes son: 'TextBox1', 'TextBox2' y 'TextBox3'
las siguientes lineas cambiaran de textbox activo al siguiente => usando la tecla {Tab} <[o... si combinas {Tab} con {Mayus} se moveran al anterior]
[si NO hay siguiente o anterior... regresa el enfoque a la seleccion actual de la hoja]

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.

en el modulo de codigo de 'esa' hoja ==Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = vbKeyReturn Then SendKeys "{Esc}"
If KeyCode = vbKeyTab Then
If Shift = 0 Then Me.OLEObjects("TextBox2").Activate Else SendKeys "{Esc}"
End If
End Sub
Private Sub TextBox2_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = vbKeyReturn Then SendKeys "{Esc}"
If KeyCode = vbKeyTab Then
If Shift = 0 Then Me.OLEObjects("TextBox3").Activate Else OLEObjects("TextBox1").Activate
End If
End Sub
Private Sub TextBox3_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = vbKeyReturn Then SendKeys "{Esc}"
If KeyCode = vbKeyTab Then
If Shift = 1 Then Me.OLEObjects("TextBox2").Activate Else SendKeys "{Esc}"
End If
End Sub

Preguntas similares