Quisiera ayudarte pero no entiendo la pregunta. Si el campo donde vas a escribir un número, es numérico, ¿cómo te va a limitar la cantidad que vayas a poner? ¿Conque lo compara? Otra cosa es que los datos los metas a través de un formulario. Por ejemplo
En tamaño elijo el que quiera y si en Superficie escribo la cantidad que ves cuando pulso Enter o intento irme a otro registro
Al aceptar, el cursor se vuelve a Superficie para que lo corrijas. Una vez corregido me voy a otro registro
Como el tamaño es Mediana, cuando pulso Enter
El codigo del evento Antes de actualizar del cuadro de texto Superficie es
Private Sub Superficie_BeforeUpdate(Cancel As Integer)
If Tamaño = "Pequeño" And Superficie > 1000 Then
MsgBox "Como el tamaño es pequeño, la superficie no puede superar los 1000. Debes corregirlo", vbOKOnly, "La próxima te fijas más"
DoCmd.CancelEvent
ElseIf Tamaño = "Mediana" And Superficie <= 1000 Or Superficie > 10000 Then
MsgBox "Como el tamaño es mediano, la superficie no puede ser menor de 1000 ni mayor de 10000. Debes corregirlo", vbOKOnly, "La próxima te fijas más"
DoCmd.CancelEvent
ElseIf Tamaño = "grande" And Superficie <= 10000 Or Superficie > 100000 Then
MsgBox "Como el tamaño es grande, la superficie debe estar comprendida entre 100001 y 100000. Debes corregirlo", vbOKOnly, "La próxima te fijas más"
DoCmd.CancelEvent
End If
End Sub