MaxChar. Limitar el número de caracteres
Pregunta
¿Hay alguna manera en que pueda limitar el número de caracteres que se puedan introducir en un cuadro de texto de un formulario?
Respuesta
Puedes utilizar una función personalizada para la ocasión. Sólo tienes que asociarla al evento Al cambiar (Change) del cuadro de texto correspondiente. Esta función tiene los siguientes
Argumentos
Argumentos | Descripción |
---|---|
nChar | Requerido. El número límite de caracteres que se podrán introducir en el cuadro de texto |
Msg | Opcional. Un valor de tipo cadena, con el mensaje que se mostrará cada vez que se intente escribir más allá del límite establecido. |
Ejemplo de uso
' Asociándolo directamente a la casilla del evento
= MaxChar(15)
' o asociándolo dentro del código del evento
Call MaxChar(15)
Codigo
'---------------------------------------------------------
'
' MaxChar
'
' Código escrito originalmente por Juan M Afán de Ribera.
' Estás autorizado a utilizarlo dentro de una aplicación
' siempre que esta nota de autor permanezca inalterada.
' En el caso de querer publicarlo en una página Web,
' por favor, contactar con el autor en
'
' accessvbafaq@ya.com
'
' Este código se brinda por cortesía de
' Juan M. Afán de Ribera
'
Public Function MaxChar( _
nChar As Long, _
Optional Msg As String)
With Screen.ActiveControl
' si el número de caracteres supera
' el límite impuesto por el usuario
If Len(.Text) > nChar Then
' eliminamos todos los caracteres
' que excedan del número
.Text = Left$(.Text, nChar)
' ponemos el cursor al final
.SelStart = nChar
' sonido de alarma
Beep
' si se quiere dar un mensaje...
If Len(Msg) > 0 Then MsgBox Msg
End If
End With
End Function
'---------------------------------------------------------
Créditos
con el fin de dar a conocer el trabajo de uno de los más grandes en el mundo de Access en español, y tras solicitar su permiso, replico este artículo de Juan M Afán de Ribera. Todos los derechos y autoría corresponden a él. Access & VBA FAQ – MaxChar. Limitar el número de caracteres (archive.org)
Pregunta Sé cómo imprimir un informe mediante código y sé cómo hacer para que aparezca el cuadro de diálogo imprimir,…
Cómo conseguir en un informe calcular sólo el total para cada página