Conversión de string a currency

Hola experto, antes que nada agradezco tu ayuda, mi consulta es la siguiente:

Tengo una tabla ventas con un campo total de tipo numero, tamaño double y formato numero general.

En una etiqueta tengo un valor $150,85

Quiero guardar este dato en la tabla:

rsVentas!total = CDbl(Me.lblTotal.Caption)

Y me da error 13 no coinciden los tipos.

Desde ya muchas gracias!!

1 Respuesta

Respuesta
1

Este error siempre ocurre cuando intentamos por código actualizar un campo numérico a partir de un campo texto, toda vez, que Access SOLO reconoce el formato USA en código VBA, es decir, siempre toma el punto como sperarador de decimales y no la coma.

Copia esta función en en módulo de VBA:

Public Function CambiaDecimal(mstrtxt As Variant) As String
'función para suprimir la "," y cambiar por "." en la sentecia UPDATE y evitar error
Dim encuentra As Integer
Dim tem As String
encuentra = InStrRev(mstrtxt, ",")
If encuentra > 0 Then ' hay decimal
tem = Replace(mstrtxt, ",", ".", 1)
CambiaDecimal = tem
Else
CambiaDecimal = mstrtxt
End If
End Function

Y La llamas de la siguiente forma:

rsVentas!Total=CambiaDecimal(Me.lblTotal.Caption)

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas