Autor Tema: Completar campos en Excel y imprimir  (Leído 2710 veces)

0 Usuarios y 1 Visitante están viendo este tema.

E N T E R

  • Petabyte
  • ******
  • Mensajes: 1062
  • Reputación: +57/-13
  • www.enterpy.com
    • Ver Perfil
    • www.enterpy.com
Completar campos en Excel y imprimir
« en: Junio 27, 2013, 06:47:17 pm »
Tengo la siguiente planilla en excel ya con los campos definidos TIPO, MARCA, MODELO, NºCHASSIS, COMBUSTIBLE, AÑO Nº MOTOR. hay una manera desde vb6 completar esos campos y imprimir el archivo.



O sea cada ves que pulse un boton en VB que abra el archivo y reemplazar los datos por cada campo correspondiente E imprimir.
CIBER GOOGLE - CONCEPCIÓN PARAGUAY
www.enterpy.com
Primera regla de la programacion, para que vas a hacerlo complicado si lo puedes hacer sencillo

79137913

  • Megabyte
  • ***
  • Mensajes: 185
  • Reputación: +21/-4
  • 4 Esquinas
    • Ver Perfil
    • Eco.Resumen Resumenes Cs. Economicas
Re:Completar campos en Excel y imprimir
« Respuesta #1 en: Junio 28, 2013, 01:18:51 pm »
HOLA!!!

Yo uso esta funcion que genera e imprime:
Código: (VB) [Seleccionar]
Private Sub Excel()
Set EX = New Excel.Application
Dim wb As Excel.Workbook
Dim ws As Excel.Worksheet
Dim celda As Excel.Range
Dim cadena1 As String
Set wb = EX.Workbooks.Add("\\Server\Archivos de la Red\SISTEMA COBRANZAS\RECIBO.xlt") 'archivo a abrir
Set ws = wb.Worksheets(1) 'posicion de hoja
Set celda = ws.Range("B12") 'posicion en celda a escribir
celda.Value = CONCEPTOMOD ' asignacion de valor
Set celda = ws.Range("D12") 'posicionar de nuevo lacelda
celda.Value = Mid(UCase(FECHAMOD), 1, 3) & Mid(UCase(FECHAMOD), 7, 4)    'asignacion de valor
Set celda = ws.Range("E12") 'posicionar de nuevo lacelda
celda.Value = DINEROMOD ' asignacion de valor
Set celda = ws.Range("C8") 'posicionar de nuevo lacelda
celda.Value = CLIENTEMOD ' asignacion de valor
Dim rr As String
    Open App.Path & "\BDS\NUMERO.REC" For Input As #1
    Do Until EOF(1)
    Input #1, rr
    RECIBOMOD = rr
    Loop
    Close #1
Set celda = ws.Range("G2")
celda.Value = RECIBOMOD
    Open App.Path & "\BDS\NUMERO.REC" For Output As #1
        Write #1, (RECIBOMOD + 1)
    Close #1

      PR = MsgBox("QUIERE IMPRIMIR UN RECIBO?", vbYesNo, "IMPUTACION DE PAGOS") 'consulta si imprimir
    If PR = 6 Then
    ws.PrintOut 'imprimir
    End If
    wb.SaveCopyAs App.Path & "\RECIBOS\" & Form6.Caption & " - RECIBO N. " & RECIBOMOD & ".xls"
    Application.DisplayAlerts = False
    wb.SaveAs "C:\" & Form6.Caption & " - RECIBO N. " & RECIBOMOD & ".xlt", 1
    wb.Close
    Kill "C:\" & Form6.Caption & " - RECIBO N. " & RECIBOMOD & ".xlt"
    Application.DisplayAlerts = True
End Sub

GRACIAS POR LEER!!!
"Como no se puede igualar a Dios, ya he decidido que hacer, ¡SUPERARLO!"
"La peor de las ignorancias es no saber corregirlas"

 79137913                          *Shadow Scouts Team*                                                          Resumenes Cs.Economicas

LeandroA

  • Administrador
  • Petabyte
  • *****
  • Mensajes: 1128
  • Reputación: +151/-8
    • Ver Perfil
Re:Completar campos en Excel y imprimir
« Respuesta #2 en: Junio 28, 2013, 03:30:01 pm »
Código: (vb) [Seleccionar]
Option Explicit

Private Sub Form_Load()

    Dim Obj_Excel   As Object
    Dim Obj_Libro   As Object
    Dim Obj_Hoja    As Object
    Dim Path As String
   
   
    Path = "C:\Users\Windows\Desktop\Libro1.xlsx"
   
    ' -- Crear nueva instancia de Excel
    Set Obj_Excel = CreateObject("Excel.Application")
    ' -- Agregar nuevo libro
    Set Obj_Libro = Obj_Excel.Workbooks.Open(Path)
   
    ' -- Referencia a la Hoja activa ( la que añade por defecto Excel )
    Set Obj_Hoja = Obj_Excel.ActiveSheet
   
    Obj_Hoja.Cells(1, 1) = "Hola"
    Obj_Hoja.Cells(1, 2) = "Mundo"
   
     Obj_Hoja.PrintOut _
        From:=1, _
        To:=1, _
        Copies:=1, _
        Preview:=False, _
        ActivePrinter:="", _
        PrintToFile:=False, _
        Collate:=True, _
        PrToFileName:="", _
        IgnorePrintAreas:=False
   
    Obj_Libro.save
    Obj_Libro.Close
   
    Set Obj_Hoja = Nothing
    Set Obj_Libro = Nothing
    Set Obj_Excel = Nothing
       
End Sub
« última modificación: Junio 28, 2013, 03:37:05 pm por LeandroA »