Access - exportar consulta - error

 
Vista:

exportar consulta - error

Publicado por andres (6 intervenciones) el 28/12/2007 15:14:21
Hola a todos, de antemano agradezco a quines se interesen en mi duda.

Mi problema es el siguiente: tengo una consulta la cual quiero exportar a excel presionando un boton. El codigo del boton es:

Private Sub Comando1_Click()
If MsgBox("Se va a exportar el informe a Microsoft Excel........", vbQuestion + vbYesNo, "Confirme que desea exportar") = vbYes Then
DoCmd.OpenQuery "factura Consulta"
DoCmd.OutputTo acQuery, "factura Consulta", "MicrosoftExcel(*.xls)", , False, ""
DoCmd.Close acQuery, "factura Consulta"

End If

En la linea:
DoCmd.OutputTo acQuery, "factura Consulta", "MicrosoftExcel(*.xls)", , False, ""
se le pide al usuario que ingrese el nombre del archivo genereado y su ubicación.
Esto esta bien ya que en la misma carpeta hay varios archivos generados por este medio.
Pero si en el cuadro de dialogo donde se pregunta el nombre y la ubicacion, el usuario aprieta en Cancelar, se genera un error de código y se detiene la ejecucion de esa línea y de la siguinte, la que cierra la consulta.

Si alguien sabe como evitar ese error desde ya estoy muy agradecido por cualquier sugerencia

Saludos. Andres
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

RE:exportar consulta - error

Publicado por Enrique (1299 intervenciones) el 28/12/2007 16:23:52
Hola Andrés:

Prueba de esta forma, pero observa que no es necesario ni abrir previamente la consuta ni cerrarla después, es suficiente con poner su nombre entre comillas después de acQuery.

Private Sub Comando1_Click()
On Error GoTo Cancelar
DoCmd.OutputTo acQuery, "factura consulta", "MicrosoftExcel(*.xls)", , False, ""
Exit Sub
Cancelar:
MsgBox "Exportación cancelada.", vbInformation, "Cancelación"
End Sub

Saludos
Enrique
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

RE:exportar consulta - error

Publicado por Victoria (1530 intervenciones) el 28/12/2007 17:22:27
Hola:

En el código que pones, a mi entender, deberías poner un ELSE para conteplar qué hacer si se contesta NO a la exportación

No has puesto el código en el que se pide el nombre y la ubicaciónl y es ahí en donde hay que filtrar el Cancelar

Un saludo
Victoria
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

RE:exportar consulta - error

Publicado por Enrique (1299 intervenciones) el 28/12/2007 17:59:59
No, Victoria, parece que no has entendido lo que está haciendo Andrés, no se trata de un MsgBox con botones "Aceptar" y "Cancelar", la propia línea:
DoCmd.OutputTo acQuery............
ya abre por si misma un cuadro de diálogo tipo explorador de Windows y ese cuadro de diálogo tiene dos botones: Aceptar y Cancelar, además en un Cuadro de Texto aparece por defecto el nombre que va a tener el archivo Excel, que es el mismo nombre de la consulta (aunque se puede cambiar) y solo hay que buscar la carpeta de destino en el explorador y pulsar "Aceptar"; no hay que programar nada. Este cuadro de diálogo se abre porque justo antes de False, no se han especificado ni la carpeta de destino, ni el nombre de archivo Excel, que es lo que Andrés quiere que ocurra.

El error lo produce el propio cuadro de diálogo si se pulsa "Cancelar" y solo hay que interceptarlo con un control de error (On error Goto.....)

De todas formas, Andrés nos dirá.

Enrique
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

Enrique...

Publicado por Victoria (1530 intervenciones) el 28/12/2007 19:09:15
Tienes razón, no lo capté y te doy las gracias por aclarármelo. Ya sabes que respeto todo lo que sabes, sin duda, muchísimo más que yo

Feliz Año Enrique
Victoria
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

RE:Enrique...

Publicado por Enrique (1299 intervenciones) el 28/12/2007 19:47:47
No es que yo sepa más, Victoria, lo que pasa es que lo probé antes de contestarle a Andrés y por eso lo sabía, además tenía algo parecido entre los muchos "experimentos" que tengo hechos en Access.

Un afectuoso saludo
Enrique
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

RE:Enrique...

Publicado por andres (6 intervenciones) el 29/12/2007 22:24:18
Muchas gracias a ambos por interesarse. El codigo que me pasó Enrique funcionó a la perfección.

Muchas gracias y felices fiestas!!!
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