texto - setfocus vba excel para que sirve
VBA: ¿Por qué debo establecer el foco para controlar todo el tiempo? (1)
Use .Value
en .Value
lugar, eso no requiere establecer el foco primero. De la documentación, por ejemplo, para el control TextBox (énfasis mío):
Mientras que el control tiene el foco, la propiedad Text contiene los datos de texto actualmente en el control; la propiedad Value contiene los últimos datos guardados para el control. Cuando mueve el foco a otro control, los datos del control se actualizan y la propiedad Value se establece en este nuevo valor. La configuración de la propiedad Text no estará disponible hasta que el control vuelva a enfocarse.
Estoy creando un sistema de inventario de biblioteca personal utilizando una base de datos de Access 2007. En código, cada vez que hago referencia a la propiedad .Text
de un control de formulario, ya sea cambiando el valor o simplemente comprobando el valor en una instrucción IF, me .Text
un .Text
con el Run-time error ''2185'': You can''t reference a property or method for a control unless the control has the focus
.
¿Por qué es esto?
Para establecer .Text
no es un gran problema, pero cuando estoy comprobando el valor en una declaración IF, no puedo establecer el foco cuando estoy comprobando varias condiciones.