ESTOY HACIENDO UNA MACRO PARA PUNTO DE VENTA, CUANDO UTILIZO EL FORMATO CURRENCY LOS DATOS QUE ME GUARDA NO SON EN MILES SINO EN DECIMALES, PROBE QUITADNO ESE FORMATO Y AUNQUE EN LA MACRO NO ME PONE EL SIGNO PESO, CUANDO GUARDA LA INFORMACION SE GUARDA CON SIGNO PESO Y CON LAS CANTIDADDES EXACTA DE LA OPERACION. ESTE ES EL MODELO:

'
Private Sub CommandButton1_Click()
'Registrar producto y capturar cantidad
'Declaramos variables
Dim strDescripcion As String
Dim intCantidad As Long
Dim intPrecio As Long
Dim doublePUnitario As Integer
Dim intTotal As Double
'
'En caso de error
On Error GoTo ErrorHandler
'
With Application.WorksheetFunction
'
'Usamos BUSCARV para encontrar el detalle del producto
'
strDescripcion = .VLookup(CDbl(Me.TextBox1.Value), PRODUCTOS.Range("A:C"), 2, 0)
'
intCantidad = InputBox(strDescripcion & vbNewLine & vbNewLine & "Ingresa la cantidad.", "Cantidad", 1)
intPrecio = InputBox(strDescripcion & vbNewLine & vbNewLine & "Ingresa el precio.", "Precio", 1)
'
If intCantidad = 0 Then GoTo ErrorHandler
If intPrecio = 0 Then GoTo ErrorHandler
'
'Llenamos el ListBox
'...CÓDIGO
Me.ListBox1.AddItem Me.TextBox1.Value
'
'...DESCRIPCIÓN
ListBox1.List(ListBox1.ListCount - 1, 1) = strDescripcion

'
'...CANTIDAD
ListBox1.List(ListBox1.ListCount - 1, 2) = Format(intCantidad, "General Number")
'
'...P.UNITARIO
ListBox1.List(ListBox1.ListCount - 1, 3) = Format((intPrecio), "Currency")
'
'...TOTAL
intTotal = intPrecio * intCantidad
ListBox1.List(ListBox1.ListCount - 1, 4) = Format((intTotal), "Currency")
'
'...ETIQUETAS
Me.lblProductos = Format(CLng(Me.lblProductos) + intCantidad, "General Number")
Me.lblTotal = Format(CDbl(Me.lblTotal) + CDbl(intTotal), "Currency")
'
Me.TextBox1.Value = ""
Me.TextBox1.SetFocus
'
End With
'
Exit Sub
'
ErrorHandler:
'
MsgBox "Ha ocurrido un error: " & Err.Description, vbExclamation, "EXCELeINFO"
'
Me.TextBox1.Value = ""
Me.TextBox1.SetFocus
'
End Sub
'


Private Sub CommandButton4_Click()
Unload Me
End Sub
'
Private Sub CommandButton5_Click()
'Guardar compra en tabla
Dim i As Variant
Dim j As Variant
Dim TransRowRng As Range
Dim NewRow As Integer
'
With VENTAS
'
For i = Me.ListBox1.ListCount To 1 Step -1
'
Set TransRowRng = ThisWorkbook.Worksheets("VENTAS").Cells(1, 1).CurrentRegion
NewRow = TransRowRng.Rows.Count + 1
.Cells(NewRow, 1).Value = Date
.Cells(NewRow, 2).Value = Me.txtConsec.Value
'
For j = 0 To 4
'
.Cells(NewRow, j + 3).Value = Me.ListBox1.List(Me.ListBox1.ListCount - i, j)
'
Next j
'
Next i
'
End With
'
MsgBox "Registros guardados con éxito.", vbInformation, "EXCELeINFO"
'
Unload Me
'
End Sub


Private Sub CommandButton6_Click()
'Eliminar producto capturado erroneamente.
'
'Declaramos variables
Dim Cuenta As Integer
Dim Numero As Integer
Dim j As Integer
Dim i As Integer
Dim strNombreItem As String
Dim CantidadSeleccionado As String
Dim TotalSeleccionado As Double

'
Cuenta = Me.ListBox1.ListCount
Numero = 0
'
'Validamos que haya un elemento seleccionado.
For j = 0 To Cuenta - 1
If Me.ListBox1.Selected(j) = True Then
Numero = Numero + 1
End If
Next j
'
If Numero <> 0 Then
'
'La hoja seleccionada se pasará al ListBox de hojas visibles.
For i = 0 To Cuenta - 1
If Me.ListBox1.Selected(i) = True Then
strNombreItem = Me.ListBox1.List(i)
CantidadSeleccionado = ListBox1.List(i, 2)
TotalSeleccionado = ListBox1.List(i, 4)
Me.ListBox1.RemoveItem i
Me.lblProductos.Caption = Format(Me.lblProductos.Caption - CantidadSeleccionado, "Standard")
Me.lblTotal.Caption = Format(Me.lblTotal.Caption - TotalSeleccionado, "Currency")
End If
Next i
'
End If
'
End Sub

Private Sub Frame1_Click()

End Sub

'
Private Sub UserForm_Initialize()
Dim intConsecutivo As String
'
Me.ListBox1.ColumnCount = 5
Me.ListBox1.ColumnWidths = "70 pt; 150 pt; 55 pt; 60 pt; 60 pt"
Me.txtFecha.Value = Date
'
intConsecutivo = VENTAS.Range("I1").Value
'
If intConsecutivo = "CONSECUTIVO" Then
'
Me.txtConsec = 1
'
Else
'
Me.txtConsec = intConsecutivo + 1
'
End If
End Sub

POR FAVOR!!! AYUDA URGENTE