OVH Cloud OVH Cloud

DoCmd.OutputTo ??

2 réponses
Avatar
Kolonna
Bonjour à tous,

Je cherche à exporter le résultat d'une requête en format XLS et de
l'enregistrer sur un répertoire spécifique.

1. Si j'utilise "CopierVers" grâce une macro générée par Access, si le
fichier export existe déjà, j'ai droit à l'invit "Le fichier existe déjà,
voulez vous le remplacer ?".

2. Si je tape en dur le code VBA, strictement identique à la macro (via
Outils/Macro/Convertir les macros en VBA) l'invite n'apparaît pas et mon
fichier est automatiquement écrasé.

Quelqu'un sait-il pourquoi ?

Celà me pose un problème car je veux vérifier si le dossier où je veux
enregistrer le fichier export existe déjà (via Dir("c:\...", vbDirectory), et
je ne peux pas le faire via une macro générée par Access.

Merci d'avance !!

2 réponses

Avatar
Raymond [mvp]
Bonjour.

tu peux faire ceci:
If Dir("c:essais.xls") = "essais.xls" Then
If MsgBox("Fichier existant, le supprimer ?", vbYesNo, "OutputTo") =
vbYes Then
DoCmd.OutputTo acOutputQuery, "requête1", acFormatXLS,
"c:essais.xls"
Else
Exit Sub
End If
Else
DoCmd.OutputTo acOutputQuery, "requête1", acFormatXLS,
"c:essais.xls"
End If

--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Kolonna" a écrit dans le message de
news:
Bonjour à tous,

Je cherche à exporter le résultat d'une requête en format XLS et de
l'enregistrer sur un répertoire spécifique.

1. Si j'utilise "CopierVers" grâce une macro générée par Access, si le
fichier export existe déjà, j'ai droit à l'invit "Le fichier existe déjà,
voulez vous le remplacer ?".

2. Si je tape en dur le code VBA, strictement identique à la macro (via
Outils/Macro/Convertir les macros en VBA) l'invite n'apparaît pas et mon
fichier est automatiquement écrasé.

Quelqu'un sait-il pourquoi ?

Celà me pose un problème car je veux vérifier si le dossier où je veux
enregistrer le fichier export existe déjà (via Dir("c:...", vbDirectory),
et
je ne peux pas le faire via une macro générée par Access.

Merci d'avance !!





Avatar
Kolonna
Merci Raymond!
J'y suis arrivé aussi en vérifiant l'existence du répertoire dans un
ExécuterCode dans la macro Access.

Mais je trouve quand même bizarre que apparemment le même code ne génère pas
la même chose...


"Raymond [mvp]" wrote:

Bonjour.

tu peux faire ceci:
If Dir("c:essais.xls") = "essais.xls" Then
If MsgBox("Fichier existant, le supprimer ?", vbYesNo, "OutputTo") =
vbYes Then
DoCmd.OutputTo acOutputQuery, "requête1", acFormatXLS,
"c:essais.xls"
Else
Exit Sub
End If
Else
DoCmd.OutputTo acOutputQuery, "requête1", acFormatXLS,
"c:essais.xls"
End If

--
@+
Raymond Access MVP
http://OfficeSystem.Access.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"Kolonna" a écrit dans le message de
news:
Bonjour à tous,

Je cherche à exporter le résultat d'une requête en format XLS et de
l'enregistrer sur un répertoire spécifique.

1. Si j'utilise "CopierVers" grâce une macro générée par Access, si le
fichier export existe déjà, j'ai droit à l'invit "Le fichier existe déjà,
voulez vous le remplacer ?".

2. Si je tape en dur le code VBA, strictement identique à la macro (via
Outils/Macro/Convertir les macros en VBA) l'invite n'apparaît pas et mon
fichier est automatiquement écrasé.

Quelqu'un sait-il pourquoi ?

Celà me pose un problème car je veux vérifier si le dossier où je veux
enregistrer le fichier export existe déjà (via Dir("c:...", vbDirectory),
et
je ne peux pas le faire via une macro générée par Access.

Merci d'avance !!