• Domingo 22 de Diciembre de 2024, 19:11

Autor Tema:  Exportar Excel Con Un Commondialog  (Leído 1218 veces)

aprendiz_333

  • Nuevo Miembro
  • *
  • Mensajes: 9
    • Ver Perfil
Exportar Excel Con Un Commondialog
« en: Lunes 19 de Noviembre de 2007, 09:58 »
0
Buenas ... Estoy tratando de Exportar los campos de una tabla (PRODUCTOS) a Excel, para esto utilizo un boton el cual llama a un commondialog y de esta menera elegir la ruta donde guardar el archivo excel... el codigo que tengo me permite cargar los datos y mostrar el archivo excel....  pero lo que necesito es que no lo muestre y automaticamente se guarden los datos segun la ruta que escogi en el commondialog.
ojala me puedan ayudar .. gracias por cualquier sugerencia



' En Modulo:

 Public dbCnx As Connection
-----------------------------------------------------------------
Public Sub AbrirConexion(varX As Boolean)
If varX Then
    Set dbCnx = New Connection
    dbCnx.CursorLocation = adUseClient
    dbCnx.Open "Provider=SQLOLEDB;Initial Catalog=Empresa;Data Source=(local);uid=sa;password= ; persist security info=Tru;"
Else
    If dbCnx.State = 1 Then dbCnx.Close
End If
End Sub



'En Formulario:
Private Sub Form_Load()
AbrirConexion True
End Sub

Option Explicit
Dim Con As ADODB.Connection
Dim loExcel As Object
Dim libro As Object
----------------------------------------------
Private Sub Command1_Click()
 Dim Conexion As String
 Dim Linea As String

 CommonDialog1.DialogTitle = "Guardar en"
 CommonDialog1.Filter = "Excel (*.xls)|*.xls"
 CommonDialog1.ShowSave

  If CommonDialog1.FileName = "" Then
      Exit Sub
  Else
     Set loExcel = CreateObject("Excel.Application")
     Set libro = loExcel.Workbooks.Add
     loExcel.Visible = True   ' quitare esta linea para que no muestre

    Conexion = "ODBC;DRIVER=SQL Server;SERVER=;UID=sa;PWD=;DATABASE=Empresa"

    With libro.ActiveSheet.QueryTables.Add(Connection:=Conexion,Destination:=libro.ActiveSheet.Cells(1, 1), Sql:="SELECT * from producto")
        .Refresh
    End With
       loExcel.ActiveWorkbook.Activate
 End If