Access - moneda

 
Vista:

moneda

Publicado por eve (2 intervenciones) el 29/04/2004 03:01:51
Necesito ayuda, ya que tengo un informe en el que debo incluir un mismo numero tanto en n°, como en texto, por ejemplo:
$30 = treinta pesos.
Use una funcion que se llama moneda (numero), pero la debo usar dentro de una consulta y no me permite hacerlo.
Use otra llamada cmoneda, pero no es lo que busco.
Porfa, si alguien sabe como hacerlo, contesteme.
Muchisimas gracias.
Eve.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

moneda

Publicado por Alejandro (4142 intervenciones) el 05/05/2023 18:09:14
Para mostrar un número tanto en formato numérico como en formato de texto en un informe de Access, puedes usar las siguientes opciones:

1. Para mostrar el número en formato numérico, simplemente puedes agregar el campo en el informe y aplicar el formato de moneda a ese campo. Para hacer esto, selecciona el campo en el informe, ve a la pestaña "Formato" en la cinta de opciones y selecciona "Moneda" en la lista de opciones de formato.

2. Para mostrar el número en formato de texto, puedes agregar una expresión al informe. Para hacer esto, crea un cuadro de texto en el informe donde deseas mostrar el número en formato de texto, haz clic con el botón derecho en el cuadro de texto y selecciona "Propiedades". En la pestaña "Datos", selecciona "Expresión" en la lista desplegable "Control de origen". Luego, en la ventana de la expresión, escribe una fórmula que convierta el número a formato de texto. Por ejemplo, si el nombre del campo es "Precio", la fórmula podría ser:

1
=IIf([Precio]=1,"Un peso",NumToText([Precio]) & " pesos")

En esta fórmula, se utiliza la función "IIf" para verificar si el valor del campo es 1, en cuyo caso se muestra el texto "Un peso". Si el valor no es 1, se llama a una función personalizada llamada "NumToText" que convierte el número a formato de texto.

Para crear la función "NumToText", debes agregar un módulo a la base de datos y escribir el código de la función en ese módulo. Aquí hay un ejemplo de código para la función:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Public Function NumToText(ByVal Number As Currency) As String
       Dim Dollars As String, Cents As String, Temp As String
       Dim DecimalPlace As Integer, Count As Integer
       ReDim Place(9) As String
       Place(2) = " Thousand "
       Place(3) = " Million "
       Place(4) = " Billion "
       Place(5) = " Trillion "
       Number = Round(Number, 2)
       DecimalPlace = InStr(1, Number, ".")
       Cents = Right(Number, Len(Number) - DecimalPlace)
       Dollars = Left(Number, DecimalPlace - 1)
       Temp = ""
       Count = 1
       Do While Dollars <> ""
           Temp = ConvertHundreds(Right(Dollars, 3)) & Place(Count) & Temp
           If Len(Dollars) > 3 Then
               Dollars = Left(Dollars, Len(Dollars) - 3)
           Else
               Dollars = ""
           End If
           Count = Count + 1
       Loop
       NumToText = Temp & "pesos con " & Cents & "/100"
   End Function

En esta función, se utiliza la función "ConvertHundreds" para convertir los dígitos de las centenas en formato de texto. Luego se agregan las palabras "mil", "millón", etc., según corresponda. Por último, se agrega el texto "pesos con" y los centavos en formato de texto.

Espero que esto te ayude a mostrar un número tanto en formato numérico como en formato de texto en tu informe de Access.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar