RE: Problemas al Imprimir en Visual Basic
Hola nag1967 !!
Cuando tengo que imprimir informes en una impresora matricial utilizo esta rutina casera. Se que parece rebuscado, pero me ha dado buenos resultados.
Veamos si te puede servir este ejemplo:
Private Sub Imprimir()
dim i as Integer
dim iFilas as Integer
dim iFilasxHoja as Integer
dim iHoja as Integer
dim iFilasToPrint as Integer
iFilasxHoja = 72 Cantidad de filas que contiene una hoja
iFilasToPrint = 66 Cantidad de filas a imprimir por hoja
iFilas = 0 Cantidad de filas impresas
iHojas = 0 Cantidad de hojas impresas
rsRecordset.MoveFirst
Open App.Path & "informe.txt" For Output As #1 Abre un archivo para operaciones de salida.
Do While .not. rsRecordset.EOF
If iFilas > iFilastoPrint Then
If iHoja = 0 Then Primer hoja
iHoja = iHoja + 1
Else
Avanzo filas segun como he configurado la cantidad de filas impresas por hoja
For i = iFilasToPrint to iFilasxHoja
Print #1,
Next i
iFilas = 0
Endif
Endif
If iFilas = 0 Then Principio de la hoja
Print #1, "Titulo 1"
Print #1, "Titulo 2"
Print #1,
Print #1, "Encabezado de cada Columna"
iFilas = 4
Else
Imprimo una fila de datos
Print #1, rsRecordset(0) & " " & rsRecordset(1) & " " & rsRecordset(2)
iFilas = iFilas + 1
rsRecordset.MoveNext
Endif
Loop
Close #1 Cierro el archivo de texto
--------------------------------------------------------------------------
Ahora te doy dos opciones para imprimir el archivo:
1) En este ejemplo se pierden las propiedades como negrita, doble ancho, etc.
Open App.Path "informe.txt" For Binary As #1
NLen = LOF(1)
Open "LPT1" For Output As #2
For I = 1 To NLen
Get #1, I, Caracter
Print #2, Chr(Caracter);
Next
Close #1
Close #2
2) Usando el comando Shell
Shell "command.com /C type " & App.Path & "informe.txt > prn"
--------------------------------------------------------------------------
Espero que te sea útil
Un abrazo
Tena36

</TR>