Código proporcionado por Juan M. Afán de Ribera. Pregunta: ¿Cómo puedo activar o desactivar por código la tecla de Bloque Mayúsculas?. Gracias. Respuesta: Pega en un módulo estandar el siguiente código y la función ActivarMayusculas, a la cual puedes llamar desde cualquier lugar de tu aplicación con "ActivarMayusculas True" o "ActivarMayusculas False" (sin las comillas, por supuesto): '***************** Código ****************** ' Función ActivarMayusculas. ' Propósito: Activar/desactivar tecla bloque ' Mayúsculas ' Juan M. Afan de Ribera Enero 2003 '------------------------------------------- Const VK_CAPITAL = &H14 ' Tipo definido por el usuario que contendrá ' una matriz con los valores del teclado Private Type KeyboardBytes kbByte(0 To 255) As Byte End Type ' Función API que lee el estado del teclado ' y lo devuelve en la matriz de kbByte Private Declare Function GetKeyboardState _ Lib "user32" _ (kbArray As KeyboardBytes) As Long ' Función API que establece el estado del ' teclado, según la matriz de kbByte Private Declare Function SetKeyboardState _ Lib "user32" _ (kbArray As KeyboardBytes) As Long Dim kbArray As KeyboardBytes Function ActivarMayusculas(activar As Boolean) ' Obtener el estado actual del teclado GetKeyboardState kbArray ' según el valor pasado a la función ' se activa/desactiva Bloq/Mayús If activar = True Then kbArray.kbByte(VK_CAPITAL) = 1 Else kbArray.kbByte(VK_CAPITAL) = 0 End If ' Actualizar el estado del teclado SetKeyboardState kbArray End Function '****************** Fin código ******************