Guardar datos en Hoja de Cálculo Excel desde VB6

Guardar datos en Hoja de Cálculo Excel desde VB6

Os publico un ejemplo simple de cómo generar un archivo excel desde Visual Basic 6. A partir de este ejemplo se puede adaptar para cada caso concreto, añadir bucles, tomar los datos de un recordset, etc.

'Creamos el objeto
Set objExcel = CreateObject("Excel.Application")
'Ponemos la aplicación excel no visible
'para no ver como se genera la hoja
objExcel.Visible = False
objExcel.Workbooks.Add
'Hoja activa
Set hoja = objExcel.ActiveSheet
irow = 1 'Numero de fila
'Rellenamos las celdas segun queramos
' bucles , etc....
'Lo pasamos a excel
hoja.Cells(irow + 1, 1) = valor
hoja.Cells(irow + 1, 2) = valor
hoja.Cells(irow + 1, 3) = valor
hoja.Cells(irow + 1, 4) = valor
hoja.Cells(irow + 1, 5) = valor
hoja.Cells(irow + 1, 6) = valor
'Opcional : damos formato
'Como ejemplo a la cabecera
hoja.Rows(1).Font.Bold = True
hoja.Rows(1).Font.Color = vbRed'Autoajustamos
hoja.Columns("A:Z").AutoFit
'ponemos visible
objExcel.Visible = True
'Guardamos el archivo
objExcel.ActiveWorkbook.SaveAs "C:" & NombreExcel & ".xls"
Set hoja = Nothing
Set xlibro = Nothing
Set objExcel = Nothing

3 Comentarios

  1. BUENOS DIAS, MUY UTIL LA PUBLICACION. MUCHAS GRACIAS

    Responder
  2. hola muy útil gracias, una pregunta más, que pasa si queremos migrar la información de un formulario a un libro ya existente?
    ejemplo:
    capturo fecha, nombre y hora, y hay que mover estos datos a un libro ya existente de excel llamado “reporte”. pero la app de VBa no está creada desde el libro de excel.

    Responder
    • Sin probar ni nada, imagino que habrá que abrir el archivo y elegir una hora activa.

      set libro = objExcel.WorkBooks.Open(filename)
      set hoja= objExcel.activesheet

      ….

      Libro.Save
      Libro.Close SaveChanges=True

      Esto es un poner….. busca más info en google

      Responder

Enviar comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *