Cristian: Otro punto de vista aparte de lo citado por James (un saludo James), es el siguiente.
Si dentro de todos los Controles de tu formulario tienes solo unos cuantos que quieres controlar, mi sugerencia es que le pongas un Nombre identificable de modo facil >> Ejemplo TBox01, TBox02... TBoxnn
Entonces en el Evento Load del Formulario le pones éste Código >>
Private Sub Form_Load()
Dim Ctrl As Access.Control
'Añado al evento OnChange a todos los controles que comiencen por "TBox".
For Each Ctrl In Me.Controls
If Ctrl.ControlType = acTextBox And Left(Ctrl.Name, 4) = "TBox" Then
Ctrl.OnChange = "=Avisame('" & Ctrl.Name & "')" 'Avisame es una Función que hay mas abajo y que abre el Formulario "FAsinacionPuntual"
End If
Next Ctrl
End Sub
Como puedes ver le digo que cuando cambie un control ejecute una Función que llamo avisame, pero le puedes llamar como quieras. Esta función es >>
Public Function Avisame(StrControl As String)
Dim LongTextoControl As Integer
Dim TextoDelControl As String
On Error GoTo Avisame_TratamientoErrores
'Antes de dar el primer aviso aviso: Compruebo la longitud del Texro
LongTextoControl = Nz(Len(Me.Controls(StrControl).Text), 0)
'Si el control Tiene una Longitud de >= 6 >> Puede ser el valor que se quiera
If LongTextoControl >= 6 Then
TextoDelControl = Me.Controls(StrControl).Text
MsgBox "El Texto del Control ahora es: " & TextoDelControl
Else
'No doy aviso hasta que tenga 6 o más caraceres
End If
Avisame_Salir:
On Error GoTo 0
Exit Function
Avisame_TratamientoErrores:
MsgBox "Error " & Err & " en Funcion.: Avisame de Documento VBA: Contacts (" & Err.Description & ")", vbCritical + vbOKOnly, "ATENCION"
Resume Avisame_Salir
End Function 'Avisame(StrControl As String)
Aquí pongo el aviso, pero supeditado a que el texto tenga 6 o más caracteres, pero puedes poner >=0 o lo que tu quieras. Es para hacer didáctico el ejemplo.
Pongo eso, porque no sé si quieres disparar otro evento o Ejecutar otra acción.
La respuesta principal es la primera parte como respuesta a lo que citas >>
¿No puedo hacerlo de forma global?. Un saludo >> Jacinto