Formato número estándar Access modificado

Les consulto. Es posible lograr que en un campo numérico con formato estándar ocurra esto: si escribo 1000,22 aparece 1.000,22 . El problema es que si escribo 1000 solo, aparece 1.000,00 y no quiero que aparezcan decimales en esos casos en que no hay decimales. Quiero que aparezca solamente 1.000 No logro dar en la tecla con esto. ¿O existe algún formato propio que logre esto?

2 respuestas

Respuesta

Vamos a ver si me explico. Si el formato del campo en la tabla es Estándar, así los guarda. Otra cosa es que en un formulario lo simules. Por ejemplo, si en el cuadro de texto Primero, que tiene formato Estándar escribo algo sin decimales

Al pulsar Enter

Pero si hubiera escrito

Al pulsar Enter

Me mantiene los decimales. Pero ya te digo que es un "truco". En el evento Después de actualizar del cuadro de texto Primero le pongo

Private Sub Primero_AfterUpdate()
Dim a As Single
a = Primero
If Primero - Fix(a) = 0 Then
Primero.DecimalPlaces = 0
End If
End Sub

Si te desplazaras por registros, al volver, ya te habría puesto su valor bien. Para solucionarlo, en el evento Al activar el registro del formulario deberías poner exactamente lo mismo.

Respuesta

Solo necesita programar el evento Al activar registro, por ejemplo:

TABLA

La tabla está configurada en el campo valor como Double y 2 decimales.

FORMULARIO

Observe el registro 1 conserva el valor de la tabla con 2 decimales, ahora me muevo al siguiente registro y obtengo:

Presenta el valor sin decimales. El formulario en el campo valor está configurado como Estándar y 2 decimales.

Código del formulario, evento al activar registro

Private Sub Form_Current()
 If Me.valor - Int(valor) = 0 Then
   Me.valor.DecimalPlaces = 0
 Else
   Me.valor.DecimalPlaces = 2
 End If
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas