Problemas con Access y Excel

Hola buenas. Tengo un problema muy serio que me ayudaría mucho en mi trabajo. Tengo que pasar una base de datos de Access a una hoja de Excel. El problema es que he estado intentando hacerlo y no soy capaz. ¿Podría echarme una mano?
Muchas gracias anticipadas
(Es Visual Basic 6.0 con lo que quiero hacer el volcado, mediante un programa

1 Respuesta

Respuesta
1
Para esto tienes que realizar una interfase con el mismo excel, tienes que definir un objeto de tipo excel, checa el código que anexo, tal vez te sirva pero puedes entender mejor lo que quiero explicarte.
Private Sub Exporta_Excel()
Dim oObjetoExcel As Object
Dim iCol As Integer
Dim iContRengDatos As Integer
Dim iContRengExcel As Integer
Dim iResult As Integer
Dim pszCelda As Variant
On Local Error GoTo Muestra_Error
'Título del diálogo
mdiPrincipal!dlgPrinter.DialogTitle = "Exportar Archivo..."
'Se inicializa el Nombre del Archivo
mdiPrincipal!dlgPrinter.FileName = NULL_STRING
mdiPrincipal!dlgPrinter.CancelError = False
'Tamaño Máximo del Archivo
mdiPrincipal!dlgPrinter.MaxFileSize = 30000
'Tipos de Archivos
mdiPrincipal!dlgPrinter.Filter = "Excel (*.xls)|*.xls"
'Extensión por Default
mdiPrincipal!dlgPrinter.DefaultExt = ".xls"
'Banderas
mdiPrincipal!dlgPrinter.Flags = cdlOFNHideReadOnly Or cdlOFNPathMustExist Or cdlOFNCreatePrompt Or cdlOFNOverwritePrompt Or cdlOFNNoReadOnlyReturn
Call Muestra_Mensaje_En_Linea("Salvar archivo...")
'Acción de Salvar el Archivo
mdiPrincipal!dlgPrinter.ShowSave
If (mdiPrincipal!dlgPrinter.FileName <> NULL_STRING) Then
Call Muestra_Mensaje_En_Linea("Estableciendo Comunicación con Microsoft Excel...")
'Se crea el Objeto
Set oObjetoExcel = CreateObject("Excel.sheet")
Call Muestra_Mensaje_En_Linea("Comunicación Establecida")
'Se posiciona al Spred de Datos en el primer renglón
sprDatos.Row = NULL_INTEGER
'Se asigna el ancho de las columnas
For iCol = 1 To sprDatos.MaxCols
oObjetoExcel.worksheets(1).Cells(iCol).ColumnWidth = sprDatos.ColWidth(iCol)
Next
Call Muestra_Mensaje_En_Linea("Exportando Datos...")
'Se exportan los datos del Spread de Parámetros
iContRengExcel = 1
For iContRengDatos = 1 To sprParametros.MaxRows
For iCol = 1 To sprParametros.MaxCols
iResult = sprParametros.GetText(iCol, iContRengDatos, pszCelda)
oObjetoExcel.worksheets(1).Cells(iContRengExcel, iCol).Value = pszCelda
Next
iContRengExcel = iContRengExcel + 1
Next
'Se exportan los datos del Spread de Datos
For iContRengDatos = NULL_INTEGER To sprDatos.MaxRows
For iCol = 1 To sprDatos.MaxCols
iResult = sprDatos.GetText(iCol, iContRengDatos, pszCelda)
oObjetoExcel.worksheets(1).Cells(iContRengExcel, iCol).Value = pszCelda
Next
iContRengExcel = iContRengExcel + 1
Next
Call Muestra_Mensaje_En_Linea("Exportación Finalizada")
'Se salva a un Archivo el Objeto
oObjetoExcel.SaveAs mdiPrincipal!dlgPrinter.FileName
End If
Call Muestra_Mensaje_En_Linea("Listo")
Exit Sub
Muestra_Error:
Call Muestra_Error_OLE
Exit Sub
End Sub
e-mail: [email protected]

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas