¿Como buscar un número de 9 cifras introduciendo menos números?
En una tabla existe un campo denominado PRVEREF, número de 8 cifras, compuesto por tres dígitos del proveedor y cinco para la referencia.
Intento que introduciendo al introducir xxx, xx compruebe si existe, hice la comprobación que describo pero cuando el ultimo digito introducido es cero falla (150,150) porque actúa como (150,15).
Dim BCAR As String, MPOS As Integer, LTEX As Integer, NCTA
BCAR = ","
MPOS = InStr(1, Cuenta, BCAR, vbTextCompare)
LTEX = Len(Cuenta)
Select Case MPOS
Case 0 To 1
If LTEX = 8 Then
NCTA = Cuenta
Else
If LTEX > 0 Then
NCTA = (Left(Cuenta, LTEX) * (1 & String(8 - LTEX, "0")))
Else
NCTA = 0
End If
End If
Case 2 To 8
NCTA = (Left(Cuenta, MPOS - 1) * (1 & String(8 - MPOS + 1, "0"))) + Right(Cuenta, LTEX - MPOS)
End Select
'----Comprobar que existe -------------------------------------------
'If (Eval("DLookUp(""[CTACONT]"",""[CUENTAGV]"",""[CTACONT] = Form.[CUENTA] "") Is Null")) Then
Dim FILTRO As String, TCTA
FILTRO = "CTACONT=" & NCTA
TCTA = DLookup("CTACONT", "CUENTAGV", FILTRO)
If IsNull(TCTA) Then
Beep
MsgBox "La CUENTA introducida NO existe."
DoCmd.CancelEvent
Cuenta.Undo
End If
End If
End If
No puedo cambiar el campo de número a texto porque es una base heredada y tiene enlace con otras tablas y otras bases.