Hola
En mi caso hago algo como:
Código:
reg.Open "Select Max(Cod) from Tabla1", bd, adOpenStatic, adLockOptimistic
If IsNull(reg.Fields(0)) Then 'Es el primer pedido
autonum = "0001"
Else 'ya existe otro pedido
autonum = reg.Fields(0) + 1 'Sumamos 1 al num anterior
If Len(autonum) = 1 Then
autonum = "000" & autonum
ElseIf Len(autonum) = 2 Then
autonum = "00" & autonum
ElseIf Len(autonum) = 3 Then
autonum = "0" & autonum
End If
End If
reg.close
En este caso el código es de 4 dígitos, pero puedes adaptarlo a tu sistema. En la primera parte, con la select, lo que hago es buscar el código mayor en la BD y sumarle uno. Luego dependiendo de la longitud que tenga ese número le añado los 00.
La verdad es que viendo el método de lokoman creo que en su día me complique demasiado. Una vez obtenido el número máximo y sumarle uno, solo le tienes que dar formato.
--Saludos--