VBA para codificación automática de pedidos entrantes y salientes
Este es el código para exportar nuestro pedido a EXCEL e imprimirlo. Échale un vistazo, puede resultarte útil.
La numeración automática depende del número que presione. Escribí una función que agrega automáticamente 1
Private Sub Command1_Click()
ExortE5SO (False)
End Sub.
Subcomando privado2_Click()
ExortE5SO (Verdadero)
Fin Sub
Función ExortE5SO(printf como booleano)
Atenuar TempFile como cadena
Atenuar xl como nueva aplicación de Excel
Atenuar xW como Excel.Libro de trabajo
Atenuar xS como Excel.Hoja de trabajo
Atenuar Nxw como nuevo libro de trabajo de Excel
Atenuar Nxs como hoja de trabajo de Excel
¡Atenuar RI!
¡Atenuar x!
Dim NworkN como cadena
Dim i como entero
Dim Billc '
Dim delRang$
'En caso de error Ir a errhand:
p>Si VS.TextMatrix(1, 1) = "" Entonces
Salir de la función
Finalizar si
i = 1
TempFile = "C:\Etmp\Defprg\E5SOPrint.xls"
Si TempFile = "" O Dir(TempFile) = "" Entonces
'? ·÷? ѻļ?ģ
Si CopyData = False Then
MsgBox "?ò֡ģ°廻", vbCritical, OP1
Función de salida
Finalizar si
Finalizar si
'================ Agregar datos al archivo de destino
Establecer xl = CreateObject ("excel.Application")
Establecer xW = xl.Workbooks.Open(TempFile)
Establecer xS = xW.Sheets("00")
xl.Visible = Verdadero
xl.Visible = Verdadero
xW.Activate
xW.Worksheets("00").Copiar
'xW.Worksheets("Muestra").Copia
NworkN = xl.ActiveWorkbook.Name
xW.Application.DisplayAlerts = False
xW.Cerrar
p>
Establecer xW = Nada
Establecer xS = Nada
Establecer Nxw = xl.Workbooks(NworkN)
Establecer Nxs = Nxw.Sheets( "00")
Nxs.Name = "1"
Establecer Nxs = Nxw.Sheets(1)
' Establecer Nxs.Index = 2 p>
' Nxs.Activate
'
'
'
' BillStr = Lista1.Text
' DEpNa = Mid(BillStr, 19, InStr(19, BillStr, "/") - 19)
Billc = List1.Text
RI = VS.ROWS
Nxs.Cells(2, 1) = "±à?ţ?" amp; Billc
Nxs.Cells(2, 7) = "'" VS.TextMatrix( 1, 10)
Nxs.Cells(3, 1) = "?ͻڣ?" y VS.TextMatrix(1, 9)
Nxs.Cells(3, 7) = VS.TextMatrix(1, 11)
Nxs.Cells(201, 2) = VS.TextMatrix(1, 8)
Nxs.Cells(203, 5) = VS .TextMatrix(1, 7)
Con VS
Para i = 1 a RI - 1
Para x = 1 a 6
Nxs.Cells(4 i, x) = VS.TextMatrix(i, x)
Siguiente
Siguiente
delRang = i 4 amp ": 200"
Nxs.ROWS(delRang).Delete
Terminar con
Si printf = True Entonces
Establecer Nxs = Nxw.Sheets(1)
Nxs.PrintOut
Nxw.Close
xl.Quit
Fin si
Establecer Nxw = Nada
Establecer Nxs = Nada
Establecer xl = Nada
errhand:
Si Err.Number = 32755 o Err.Number = 0 Entonces
Err.Clear
Salir de la función
De lo contrario, Err.Number = 424 Entonces
p>
MsgBox "ģ°?±?ǿ?й?±֣?ж? ", vbCritical, OP3
Err.Clear
Else
MsgBox Err.Number & Err.Description, vbExclamation, OP1
Err.Clear
Función de salida
Finalizar si
Finalizar función