Por que no funciona formato moneda en todos los textbox desde initialize
Tengo un inconveniente que he tratado de solucionar y de buscar en google y no he podido. Tengo en un formulario 5 textbot: importe, descuento, a pagar, efectivo y cambio. Importe y descuento me traen el dato de una celda; a pagar resta el descuento del importe; el textbox efectivo es para ingresar datos; y cambio me resta el valor del efectivo al textbox a pagar. Los datos que se muestran en los textbox los traigo con:
Private Sub UserForm_Initialize()
txt_Descuento.Value = Sheets("Caja").Range("F26")
txt_Importe.Value = Sheets("Caja").Range("G26")
txt_APagar = CDbl(txt_Importe.Value) - CDbl(txt_Descuento.Value)
End Sub
y el formato moneda con:
Private Sub txt_Cambio_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
txt_Cambio = Format(Val(txt_Cambio.Value), " $ #,##0.00")
End Sub
El inconveniente es que al abrir el formulario solo me muestra con formato moneda el textbox importe, los demás no, pero si ingreso los datos manualmente todos los textbox tienen formato. ¿Qué debo hacer en este caso?.