Access - Exportar Consulta access a excel

   
Vista:

Exportar Consulta access a excel

Publicado por tamy (1 intervención) el 14/06/2013 22:07:27
Hola, espero que me ayuden con una exportación de una consulta de access a Excel.
Necesito exportar una consulta, pero que cuando la exporte haga lo siguiente (cualquiera de las 2 opciones me sirve):

1) al presionar el botón del formulario, Pregunte donde guardar el archivo

o

2) al presionar el botón del formulario, se abra el excel con la información de la consulta del access y luego se guarda el archivo como cualquiera.

Actualmente puedo guardar la información en una archivo excel, pero lo guarda de manera automática en la ruta que le indico en el código VB, no me pregunta donde guardar.

Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Exportar Consulta access a excel

Publicado por 2pl (461 intervenciones) el 15/06/2013 11:06:07
Esto te abre un cuadro de dialogo, puedes adaptarlo para lo que necesitas
Pon esto en un modulo
Declare Function GetOpenFileName Lib "comdlg32.dll" Alias "GetOpenFileNameA" (pOpenfilename As OPENFILENAME) As Boolean

y esto en tu boton

Private Sub BtnAceptar_Click()
Dim ofn As OPENFILENAME
ofn.lStructSize = Len(ofn)
ofn.hwndOwner = Me.hwnd
ofn.lpstrFilter = "Txt Files (*.*)" + Chr$(0) + "*.*"
ofn.lpstrFile = Space$(254)
ofn.nMaxFile = 255
ofn.lpstrFileTitle = Space$(254)
ofn.nMaxFileTitle = 255
ofn.lpstrInitialDir = "C:\2PL\" ' PON LA CARPETA QUE QUIERAS
ofn.lpstrTitle = "Cuadro de dialogo" 'ESTO ES UN TITULO
ofn.Flags = 0
Dim a
a = GetOpenFileName(ofn)
If (a) Then
Application.FollowHyperlink Trim$(ofn.lpstrFile), , , False
Else
Exit Sub
End If
End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Exportar Consulta access a excel

Publicado por tamy (7 intervenciones) el 17/06/2013 17:09:51
Hola, gracias por tu respuesta. pero sabes que no me funciona, me sta dando problemas el modulo, me dice que los comentarios no pueden ir. le saco todo y dejo lo siguiente:

Declare Function GetOpenFileName (pOpenfilename As OPENFILENAME) As Boolean

Y de igual manera me reclama. Que puedo estar haciendo mal?

Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Exportar Consulta access a excel

Publicado por 2PL (461 intervenciones) el 17/06/2013 21:33:34
Declare Function GetOpenFileName Lib "comdlg32.dll" Alias "GetOpenFileNameA" (pOpenfilename As OPENFILENAME) As Boolean

Tiene que ir todo en la misma linea
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Exportar Consulta access a excel

Publicado por tamy (7 intervenciones) el 17/06/2013 23:52:43
ok, al parecer yo había copiado mal por que ahora no me ese error. Pero si me da otro. Al presionar el boton me dice:

Error de Compilación:
No se ha definido el tipo definido por el usuario

luego me voy al código y me marca el error aca:

ofn As OPENFILENAME

Cuál puede ser el problema???

Gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Exportar Consulta access a excel

Publicado por 2pl (461 intervenciones) el 18/06/2013 08:25:50
Perdona, como esto lo copie hace mucho tiempo, se me olvido mandarte esta estrutura que debes colocar donde esta el getopenfilename
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Private Type OPENFILENAME
    lStructSize As Long
    hwndOwner As Long
    hInstance As Long
    lpstrFilter As String
    lpstrCustomFilter As String
    nMaxCustFilter As Long
    nFilterIndex As Long
    lpstrFile As String
    nMaxFile As Long
    lpstrFileTitle As String
    nMaxFileTitle As Long
    lpstrInitialDir As String
    lpstrTitle As String
    FLAGS As Long
    nFileOffset As Integer
    nFileExtension As Integer
    lpstrDefExt As String
    lCustData As Long
    lpfnHook As Long
    lpTemplateName As String
End Type


Poco a poco, llegaremos al destino....
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar