error al exportar a excel desde vb
mi problema es el siguiente:
tengo una aplicacion creada en vb 6, en la que exporto datos a un libro de excel. el tema es que creo el ejecutable, lo empaqueto para crear un instalacion ejecutable, lo instalo correctamente pero no funciona en todos los equipos en los que instalo el programa, es decir, de tres equipos en los que instalado la aplicacion, la exportacino funciona en 1, que me puede suceder??
si alguien pude ayudarme, por favor le ruego que haga cuanto antes, estoy desesperado. GRACIAS!
tengo una aplicacion creada en vb 6, en la que exporto datos a un libro de excel. el tema es que creo el ejecutable, lo empaqueto para crear un instalacion ejecutable, lo instalo correctamente pero no funciona en todos los equipos en los que instalo el programa, es decir, de tres equipos en los que instalado la aplicacion, la exportacino funciona en 1, que me puede suceder??
si alguien pude ayudarme, por favor le ruego que haga cuanto antes, estoy desesperado. GRACIAS!
Si tienes excel referenciado ese puede ser tu problema, puedes hacre lo siguiente
Declara una variable así :Public xl As Object
Crea tu rutina mas o menos así:
Private Sub Write_Report()
Screen.MousePointer = vbHourglass
Dim iNumReg As Integer, iColumna As Integer
Dim Itipo As Integer, cont As Integer
strEnca1 = "PRESIDENCIA MUNICIPAL DE LE0N, GTO"
strEnca2 = "PROGRAMA: SSGVBINV004"
strEnca3 = "DIRECCION GENERAL DE SERVICIOS GENERALES"
intRow = 57
On Error Resume Next
Set xl = CreateObject("Excel.Application")
cont = 1: iRenglon = 1
xl.Workbooks.Open FileName:=App.Path
"Report004.xls", ReadOnly:=True
xl.Workbook.Open
xl.Cells(iRenglon, 5).Formula = strEnca1
iRenglon = iRenglon + 1
xl.Cells(iRenglon, 1).Formula = strEnca2
xl.Cells(iRenglon, 5).Formula = strEnca3
xl.Cells(iRenglon, 8).Formula = "FECHA: "
xl.Cells(iRenglon, 9).Formula = Date
iRenglon = iRenglon + 1
xl.Visible = True
Set xl = Nothing
Screen.MousePointer = vbArrow
Exit Sub
MIERR:
MsgBox Err.Number & "-" & Err.Description & "-" & Err.Source
Screen.MousePointer = vbArrow
End Sub
Declara una variable así :Public xl As Object
Crea tu rutina mas o menos así:
Private Sub Write_Report()
Screen.MousePointer = vbHourglass
Dim iNumReg As Integer, iColumna As Integer
Dim Itipo As Integer, cont As Integer
strEnca1 = "PRESIDENCIA MUNICIPAL DE LE0N, GTO"
strEnca2 = "PROGRAMA: SSGVBINV004"
strEnca3 = "DIRECCION GENERAL DE SERVICIOS GENERALES"
intRow = 57
On Error Resume Next
Set xl = CreateObject("Excel.Application")
cont = 1: iRenglon = 1
xl.Workbooks.Open FileName:=App.Path
"Report004.xls", ReadOnly:=True
xl.Workbook.Open
xl.Cells(iRenglon, 5).Formula = strEnca1
iRenglon = iRenglon + 1
xl.Cells(iRenglon, 1).Formula = strEnca2
xl.Cells(iRenglon, 5).Formula = strEnca3
xl.Cells(iRenglon, 8).Formula = "FECHA: "
xl.Cells(iRenglon, 9).Formula = Date
iRenglon = iRenglon + 1
xl.Visible = True
Set xl = Nothing
Screen.MousePointer = vbArrow
Exit Sub
MIERR:
MsgBox Err.Number & "-" & Err.Description & "-" & Err.Source
Screen.MousePointer = vbArrow
End Sub
Necesito una rutina sencilla que me permita exportar unos datos que tengo en una consulta realizada en SQL y mostrada a través de un DBGRid, si alguien me podría mostrar sencillamente como lo puedo colocar en una hoja de excel con un simple click de un botón que se llama "Exportar Actual Consulta" Gracias!
Sub Envia_a_Excel()
Dim ApExcel As Object 'Para abrir el objeto
Set ApExcel = CreateObject("Excel.application") 'Crea un objeto
ApExcel.Visible = True 'Hace visible el excel
ApExcel.Workbooks.Add 'Agrega un nuevo libro
For I = 1 To 3
DataGrid1.Row = I - 1
For J = 1 To 2
DataGrid1.Col = J - 1
ApExcel.Cells(I, J).Formula = DataGrid1.Text
Next
Next
ApExcel.Range("A1:E1:A10:E10").Borders.Color = RGB(0, 0, 0) 'Para cambiar los bordes
Dim ApExcel As Object 'Para abrir el objeto
Set ApExcel = CreateObject("Excel.application") 'Crea un objeto
ApExcel.Visible = True 'Hace visible el excel
ApExcel.Workbooks.Add 'Agrega un nuevo libro
For I = 1 To 3
DataGrid1.Row = I - 1
For J = 1 To 2
DataGrid1.Col = J - 1
ApExcel.Cells(I, J).Formula = DataGrid1.Text
Next
Next
ApExcel.Range("A1:E1:A10:E10").Borders.Color = RGB(0, 0, 0) 'Para cambiar los bordes
Supongo que no tendrán Excel instalado, o no será la misma versión con la que lo hiciste.
Saludos,
Javier
Saludos,
Javier
