RE:alinear números con printer.print
hola, bueno yo he hecho algún proyecto en el que tenía que imprimir facturas por impresora, y al igual que tú me encontré el problema de alinear a la derecha los números. Yo hice lo siguiente:
* primero- debes saber es que todos los números van a llevar decimales ( osea que para el 325 deberás poner 325.00), tú decides cuantos decimales llevará el número y será la misma cantidad para todos los importes.
* segundo- además todos los importes tienen que tener la misma longitud, es decir, les puedes poner un máximo de 13 dígitos que equivalen a 99.999.999,99.
* tercero- antes de imprimir haces lo siguiente:
strImporte = Format(monto, "###,###,##0.00")
intPosiciones = 0
If Len(strImporte ) < 13 Then
intPosiciones = 13 - Len(strImporte )
End If
Printer.CurrentY = posicionY
Printer.CurrentX = posicionX
Printer.Print Spc(intPosiciones ); strImporte ' Con la funcion Spc() le indicas cuantos espacios hacia la derecha desplazas el texto a partir de la posición X indicada.
Con esto consiguerás alinear todos a la derecha. También sería bueno que utilizaras algún tipo de letra como la Corier New, pero prueba con diferentes a ver cuál se adapta mejor.
Suerte.