Bonjour
J'utilise ce code dans un module
J'exporte des données d'une requète vers un fichier texte que je formatte à
ma guise et qui se nomme fiche.txt
j'aimerais savoir si on peut modifier le code pour obtenir une boîte de
dialogue demandant l'endroit où il faut enregistrer le fichier destination en
parcourant les dossiers
voici le code du module
Function export()
Dim db As DAO.Database
Dim rst As DAO.Recordset
Dim intFichier As Long
'choisir la fiche
DoCmd.OpenQuery "selection fiche", acNormal, acEdit
'Ouvrir le recordset
Set db = CurrentDb()
Set rst = db.OpenRecordset("TAMPON")
'Ouvrir le fichier texte en écriture
intFichier = FreeFile
Open "d:\fiche.TXT" For Output As intFichier
'Parcourir les champs et écrire les infos
While Not rst.EOF
Print #intFichier, "NOM"
....
' passer à l'enregistrement suivant
rst.MoveNext
Wend
'on ferme
Close intFichier
rst.Close
Set rst = Nothing
Set db = Nothing
End Function
en fait je voudrais que lorsque l'utilisateur execute la fonction export,
puisse choisir simplement la destination en parcourant les dossiers
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
rené
bonjour Chris tu peux regarder le lien suivant qui donne de bonne information http://officesystem.access.free.fr/msofiledialog.htm
slts >>>>>>>>>> René
Bonjour J'utilise ce code dans un module J'exporte des données d'une requète vers un fichier texte que je formatte à ma guise et qui se nomme fiche.txt j'aimerais savoir si on peut modifier le code pour obtenir une boîte de dialogue demandant l'endroit où il faut enregistrer le fichier destination en parcourant les dossiers voici le code du module
Function export() Dim db As DAO.Database Dim rst As DAO.Recordset Dim intFichier As Long
'choisir la fiche DoCmd.OpenQuery "selection fiche", acNormal, acEdit
'Ouvrir le recordset Set db = CurrentDb() Set rst = db.OpenRecordset("TAMPON")
'Ouvrir le fichier texte en écriture intFichier = FreeFile Open "d:fiche.TXT" For Output As intFichier
'Parcourir les champs et écrire les infos While Not rst.EOF
Print #intFichier, "NOM" ....
' passer à l'enregistrement suivant rst.MoveNext Wend
'on ferme Close intFichier rst.Close Set rst = Nothing Set db = Nothing End Function
en fait je voudrais que lorsque l'utilisateur execute la fonction export, puisse choisir simplement la destination en parcourant les dossiers
Merci
bonjour Chris
tu peux regarder le lien suivant
qui donne de bonne information
http://officesystem.access.free.fr/msofiledialog.htm
slts >>>>>>>>>> René
Bonjour
J'utilise ce code dans un module
J'exporte des données d'une requète vers un fichier texte que je formatte à
ma guise et qui se nomme fiche.txt
j'aimerais savoir si on peut modifier le code pour obtenir une boîte de
dialogue demandant l'endroit où il faut enregistrer le fichier destination en
parcourant les dossiers
voici le code du module
Function export()
Dim db As DAO.Database
Dim rst As DAO.Recordset
Dim intFichier As Long
'choisir la fiche
DoCmd.OpenQuery "selection fiche", acNormal, acEdit
'Ouvrir le recordset
Set db = CurrentDb()
Set rst = db.OpenRecordset("TAMPON")
'Ouvrir le fichier texte en écriture
intFichier = FreeFile
Open "d:fiche.TXT" For Output As intFichier
'Parcourir les champs et écrire les infos
While Not rst.EOF
Print #intFichier, "NOM"
....
' passer à l'enregistrement suivant
rst.MoveNext
Wend
'on ferme
Close intFichier
rst.Close
Set rst = Nothing
Set db = Nothing
End Function
en fait je voudrais que lorsque l'utilisateur execute la fonction export,
puisse choisir simplement la destination en parcourant les dossiers
bonjour Chris tu peux regarder le lien suivant qui donne de bonne information http://officesystem.access.free.fr/msofiledialog.htm
slts >>>>>>>>>> René
Bonjour J'utilise ce code dans un module J'exporte des données d'une requète vers un fichier texte que je formatte à ma guise et qui se nomme fiche.txt j'aimerais savoir si on peut modifier le code pour obtenir une boîte de dialogue demandant l'endroit où il faut enregistrer le fichier destination en parcourant les dossiers voici le code du module
Function export() Dim db As DAO.Database Dim rst As DAO.Recordset Dim intFichier As Long
'choisir la fiche DoCmd.OpenQuery "selection fiche", acNormal, acEdit
'Ouvrir le recordset Set db = CurrentDb() Set rst = db.OpenRecordset("TAMPON")
'Ouvrir le fichier texte en écriture intFichier = FreeFile Open "d:fiche.TXT" For Output As intFichier
'Parcourir les champs et écrire les infos While Not rst.EOF
Print #intFichier, "NOM" ....
' passer à l'enregistrement suivant rst.MoveNext Wend
'on ferme Close intFichier rst.Close Set rst = Nothing Set db = Nothing End Function
en fait je voudrais que lorsque l'utilisateur execute la fonction export, puisse choisir simplement la destination en parcourant les dossiers
Merci
Eric
Bonjour,
Ou encore en utilisant l'API GetSaveFileName()
A copier en tête du module où elle doit être utilisée (le module de la fonction, je suppose).
Option Compare Database Option Explicit
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
Private Declare Function GetSaveFileName Lib "comdlg32.dll" _ Alias "GetSaveFileNameA" _ (pOpenfilename As OPENFILENAME) As Long
Dim OFName As OPENFILENAME
Private Function ShowSave(UneChaine As String) As String ' d'après KPD-Team 1998 OFName.lStructSize = Len(OFName) OFName.hwndOwner = Me.Hwnd OFName.lpstrFilter = "Text Files (*.txt)" + Chr$(0) + "*.txt" + Chr$(0) + "All Files (*.*)" + Chr$(0) + "*.*" + Chr$(0) ' Nom du fichier OFName.lpstrFile = UneChaine & Space$(254 - Len(UneChaine)) OFName.nMaxFile = 255 OFName.lpstrFileTitle = Space$(254) OFName.nMaxFileTitle = 255 'Répertoire par défaut OFName.lpstrInitialDir = "C:" 'Titre de la boite de dialogue OFName.lpstrTitle = "Enregistrer sous ... " 'Extension par défaut OFName.lpstrDefExt = ".txt" 'no extra flags OFName.flags = 0 'Affichage de la boie de dialogue Enregistrer sous ... If GetSaveFileName(OFName) Then ShowSave = Trim$(OFName.lpstrFile) Else ShowSave = "" End If End Function
Tu appeles la fonction ShowSave(...) comme suit dans ta fonction personnelle: Function Export() Dim sFile As String sFile = ShowSave("Fiche") '<--- passage du nom du fichier If sFile <> "" Then ' ici ton code de générationdu fichier <--- Dim db As DAO.Database '...
intFichier = FreeFile Open sFile For Output As intFichier ' ... Close Else MsgBox "Opération annulée" End If End Function
Bonjour J'utilise ce code dans un module J'exporte des données d'une requète vers un fichier texte que je formatte à ma guise et qui se nomme fiche.txt j'aimerais savoir si on peut modifier le code pour obtenir une boîte de dialogue demandant l'endroit où il faut enregistrer le fichier destination en parcourant les dossiers voici le code du module
Function export() Dim db As DAO.Database Dim rst As DAO.Recordset Dim intFichier As Long
'choisir la fiche DoCmd.OpenQuery "selection fiche", acNormal, acEdit
'Ouvrir le recordset Set db = CurrentDb() Set rst = db.OpenRecordset("TAMPON")
'Ouvrir le fichier texte en écriture intFichier = FreeFile Open "d:fiche.TXT" For Output As intFichier
'Parcourir les champs et écrire les infos While Not rst.EOF
Print #intFichier, "NOM" ....
' passer à l'enregistrement suivant rst.MoveNext Wend
'on ferme Close intFichier rst.Close Set rst = Nothing Set db = Nothing End Function
en fait je voudrais que lorsque l'utilisateur execute la fonction export, puisse choisir simplement la destination en parcourant les dossiers
Merci
-- A+ Eric http://www.mpfa.info/ Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Bonjour,
Ou encore en utilisant l'API GetSaveFileName()
A copier en tête du module où elle doit être utilisée (le module de la
fonction, je suppose).
Option Compare Database
Option Explicit
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
Private Declare Function GetSaveFileName Lib "comdlg32.dll" _
Alias "GetSaveFileNameA" _
(pOpenfilename As OPENFILENAME) As Long
Dim OFName As OPENFILENAME
Private Function ShowSave(UneChaine As String) As String
' d'après KPD-Team 1998
OFName.lStructSize = Len(OFName)
OFName.hwndOwner = Me.Hwnd
OFName.lpstrFilter = "Text Files (*.txt)" + Chr$(0) + "*.txt" +
Chr$(0) + "All Files (*.*)" + Chr$(0) + "*.*" + Chr$(0)
' Nom du fichier
OFName.lpstrFile = UneChaine & Space$(254 - Len(UneChaine))
OFName.nMaxFile = 255
OFName.lpstrFileTitle = Space$(254)
OFName.nMaxFileTitle = 255
'Répertoire par défaut
OFName.lpstrInitialDir = "C:"
'Titre de la boite de dialogue
OFName.lpstrTitle = "Enregistrer sous ... "
'Extension par défaut
OFName.lpstrDefExt = ".txt"
'no extra flags
OFName.flags = 0
'Affichage de la boie de dialogue Enregistrer sous ...
If GetSaveFileName(OFName) Then
ShowSave = Trim$(OFName.lpstrFile)
Else
ShowSave = ""
End If
End Function
Tu appeles la fonction ShowSave(...) comme suit dans ta fonction
personnelle:
Function Export()
Dim sFile As String
sFile = ShowSave("Fiche") '<--- passage du nom du fichier
If sFile <> "" Then
' ici ton code de générationdu fichier <---
Dim db As DAO.Database
'...
intFichier = FreeFile
Open sFile For Output As intFichier
' ...
Close
Else
MsgBox "Opération annulée"
End If
End Function
Bonjour
J'utilise ce code dans un module
J'exporte des données d'une requète vers un fichier texte que je formatte à
ma guise et qui se nomme fiche.txt
j'aimerais savoir si on peut modifier le code pour obtenir une boîte de
dialogue demandant l'endroit où il faut enregistrer le fichier destination en
parcourant les dossiers
voici le code du module
Function export()
Dim db As DAO.Database
Dim rst As DAO.Recordset
Dim intFichier As Long
'choisir la fiche
DoCmd.OpenQuery "selection fiche", acNormal, acEdit
'Ouvrir le recordset
Set db = CurrentDb()
Set rst = db.OpenRecordset("TAMPON")
'Ouvrir le fichier texte en écriture
intFichier = FreeFile
Open "d:fiche.TXT" For Output As intFichier
'Parcourir les champs et écrire les infos
While Not rst.EOF
Print #intFichier, "NOM"
....
' passer à l'enregistrement suivant
rst.MoveNext
Wend
'on ferme
Close intFichier
rst.Close
Set rst = Nothing
Set db = Nothing
End Function
en fait je voudrais que lorsque l'utilisateur execute la fonction export,
puisse choisir simplement la destination en parcourant les dossiers
Merci
--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
A copier en tête du module où elle doit être utilisée (le module de la fonction, je suppose).
Option Compare Database Option Explicit
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
Private Declare Function GetSaveFileName Lib "comdlg32.dll" _ Alias "GetSaveFileNameA" _ (pOpenfilename As OPENFILENAME) As Long
Dim OFName As OPENFILENAME
Private Function ShowSave(UneChaine As String) As String ' d'après KPD-Team 1998 OFName.lStructSize = Len(OFName) OFName.hwndOwner = Me.Hwnd OFName.lpstrFilter = "Text Files (*.txt)" + Chr$(0) + "*.txt" + Chr$(0) + "All Files (*.*)" + Chr$(0) + "*.*" + Chr$(0) ' Nom du fichier OFName.lpstrFile = UneChaine & Space$(254 - Len(UneChaine)) OFName.nMaxFile = 255 OFName.lpstrFileTitle = Space$(254) OFName.nMaxFileTitle = 255 'Répertoire par défaut OFName.lpstrInitialDir = "C:" 'Titre de la boite de dialogue OFName.lpstrTitle = "Enregistrer sous ... " 'Extension par défaut OFName.lpstrDefExt = ".txt" 'no extra flags OFName.flags = 0 'Affichage de la boie de dialogue Enregistrer sous ... If GetSaveFileName(OFName) Then ShowSave = Trim$(OFName.lpstrFile) Else ShowSave = "" End If End Function
Tu appeles la fonction ShowSave(...) comme suit dans ta fonction personnelle: Function Export() Dim sFile As String sFile = ShowSave("Fiche") '<--- passage du nom du fichier If sFile <> "" Then ' ici ton code de générationdu fichier <--- Dim db As DAO.Database '...
intFichier = FreeFile Open sFile For Output As intFichier ' ... Close Else MsgBox "Opération annulée" End If End Function
Bonjour J'utilise ce code dans un module J'exporte des données d'une requète vers un fichier texte que je formatte à ma guise et qui se nomme fiche.txt j'aimerais savoir si on peut modifier le code pour obtenir une boîte de dialogue demandant l'endroit où il faut enregistrer le fichier destination en parcourant les dossiers voici le code du module
Function export() Dim db As DAO.Database Dim rst As DAO.Recordset Dim intFichier As Long
'choisir la fiche DoCmd.OpenQuery "selection fiche", acNormal, acEdit
'Ouvrir le recordset Set db = CurrentDb() Set rst = db.OpenRecordset("TAMPON")
'Ouvrir le fichier texte en écriture intFichier = FreeFile Open "d:fiche.TXT" For Output As intFichier
'Parcourir les champs et écrire les infos While Not rst.EOF
Print #intFichier, "NOM" ....
' passer à l'enregistrement suivant rst.MoveNext Wend
'on ferme Close intFichier rst.Close Set rst = Nothing Set db = Nothing End Function
en fait je voudrais que lorsque l'utilisateur execute la fonction export, puisse choisir simplement la destination en parcourant les dossiers
Merci
-- A+ Eric http://www.mpfa.info/ Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Chris50
Merci à tous les 2 j'essaye ça
Bonjour,
Ou encore en utilisant l'API GetSaveFileName()
A copier en tête du module où elle doit être utilisée (le module de la fonction, je suppose).
Option Compare Database Option Explicit
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
Private Declare Function GetSaveFileName Lib "comdlg32.dll" _ Alias "GetSaveFileNameA" _ (pOpenfilename As OPENFILENAME) As Long
Dim OFName As OPENFILENAME
Private Function ShowSave(UneChaine As String) As String ' d'après KPD-Team 1998 OFName.lStructSize = Len(OFName) OFName.hwndOwner = Me.Hwnd OFName.lpstrFilter = "Text Files (*.txt)" + Chr$(0) + "*.txt" + Chr$(0) + "All Files (*.*)" + Chr$(0) + "*.*" + Chr$(0) ' Nom du fichier OFName.lpstrFile = UneChaine & Space$(254 - Len(UneChaine)) OFName.nMaxFile = 255 OFName.lpstrFileTitle = Space$(254) OFName.nMaxFileTitle = 255 'Répertoire par défaut OFName.lpstrInitialDir = "C:" 'Titre de la boite de dialogue OFName.lpstrTitle = "Enregistrer sous ... " 'Extension par défaut OFName.lpstrDefExt = ".txt" 'no extra flags OFName.flags = 0 'Affichage de la boie de dialogue Enregistrer sous ... If GetSaveFileName(OFName) Then ShowSave = Trim$(OFName.lpstrFile) Else ShowSave = "" End If End Function
Tu appeles la fonction ShowSave(...) comme suit dans ta fonction personnelle: Function Export() Dim sFile As String sFile = ShowSave("Fiche") '<--- passage du nom du fichier If sFile <> "" Then ' ici ton code de générationdu fichier <--- Dim db As DAO.Database '...
intFichier = FreeFile Open sFile For Output As intFichier ' ... Close Else MsgBox "Opération annulée" End If End Function
Bonjour J'utilise ce code dans un module J'exporte des données d'une requète vers un fichier texte que je formatte à ma guise et qui se nomme fiche.txt j'aimerais savoir si on peut modifier le code pour obtenir une boîte de dialogue demandant l'endroit où il faut enregistrer le fichier destination en parcourant les dossiers voici le code du module
Function export() Dim db As DAO.Database Dim rst As DAO.Recordset Dim intFichier As Long
'choisir la fiche DoCmd.OpenQuery "selection fiche", acNormal, acEdit
'Ouvrir le recordset Set db = CurrentDb() Set rst = db.OpenRecordset("TAMPON")
'Ouvrir le fichier texte en écriture intFichier = FreeFile Open "d:fiche.TXT" For Output As intFichier
'Parcourir les champs et écrire les infos While Not rst.EOF
Print #intFichier, "NOM" ....
' passer à l'enregistrement suivant rst.MoveNext Wend
'on ferme Close intFichier rst.Close Set rst = Nothing Set db = Nothing End Function
en fait je voudrais que lorsque l'utilisateur execute la fonction export, puisse choisir simplement la destination en parcourant les dossiers
Merci
-- A+ Eric http://www.mpfa.info/ Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
Merci à tous les 2
j'essaye ça
Bonjour,
Ou encore en utilisant l'API GetSaveFileName()
A copier en tête du module où elle doit être utilisée (le module de la
fonction, je suppose).
Option Compare Database
Option Explicit
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
Private Declare Function GetSaveFileName Lib "comdlg32.dll" _
Alias "GetSaveFileNameA" _
(pOpenfilename As OPENFILENAME) As Long
Dim OFName As OPENFILENAME
Private Function ShowSave(UneChaine As String) As String
' d'après KPD-Team 1998
OFName.lStructSize = Len(OFName)
OFName.hwndOwner = Me.Hwnd
OFName.lpstrFilter = "Text Files (*.txt)" + Chr$(0) + "*.txt" +
Chr$(0) + "All Files (*.*)" + Chr$(0) + "*.*" + Chr$(0)
' Nom du fichier
OFName.lpstrFile = UneChaine & Space$(254 - Len(UneChaine))
OFName.nMaxFile = 255
OFName.lpstrFileTitle = Space$(254)
OFName.nMaxFileTitle = 255
'Répertoire par défaut
OFName.lpstrInitialDir = "C:"
'Titre de la boite de dialogue
OFName.lpstrTitle = "Enregistrer sous ... "
'Extension par défaut
OFName.lpstrDefExt = ".txt"
'no extra flags
OFName.flags = 0
'Affichage de la boie de dialogue Enregistrer sous ...
If GetSaveFileName(OFName) Then
ShowSave = Trim$(OFName.lpstrFile)
Else
ShowSave = ""
End If
End Function
Tu appeles la fonction ShowSave(...) comme suit dans ta fonction
personnelle:
Function Export()
Dim sFile As String
sFile = ShowSave("Fiche") '<--- passage du nom du fichier
If sFile <> "" Then
' ici ton code de générationdu fichier <---
Dim db As DAO.Database
'...
intFichier = FreeFile
Open sFile For Output As intFichier
' ...
Close
Else
MsgBox "Opération annulée"
End If
End Function
Bonjour
J'utilise ce code dans un module
J'exporte des données d'une requète vers un fichier texte que je formatte à
ma guise et qui se nomme fiche.txt
j'aimerais savoir si on peut modifier le code pour obtenir une boîte de
dialogue demandant l'endroit où il faut enregistrer le fichier destination en
parcourant les dossiers
voici le code du module
Function export()
Dim db As DAO.Database
Dim rst As DAO.Recordset
Dim intFichier As Long
'choisir la fiche
DoCmd.OpenQuery "selection fiche", acNormal, acEdit
'Ouvrir le recordset
Set db = CurrentDb()
Set rst = db.OpenRecordset("TAMPON")
'Ouvrir le fichier texte en écriture
intFichier = FreeFile
Open "d:fiche.TXT" For Output As intFichier
'Parcourir les champs et écrire les infos
While Not rst.EOF
Print #intFichier, "NOM"
....
' passer à l'enregistrement suivant
rst.MoveNext
Wend
'on ferme
Close intFichier
rst.Close
Set rst = Nothing
Set db = Nothing
End Function
en fait je voudrais que lorsque l'utilisateur execute la fonction export,
puisse choisir simplement la destination en parcourant les dossiers
Merci
--
A+
Eric
http://www.mpfa.info/
Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr
A copier en tête du module où elle doit être utilisée (le module de la fonction, je suppose).
Option Compare Database Option Explicit
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
Private Declare Function GetSaveFileName Lib "comdlg32.dll" _ Alias "GetSaveFileNameA" _ (pOpenfilename As OPENFILENAME) As Long
Dim OFName As OPENFILENAME
Private Function ShowSave(UneChaine As String) As String ' d'après KPD-Team 1998 OFName.lStructSize = Len(OFName) OFName.hwndOwner = Me.Hwnd OFName.lpstrFilter = "Text Files (*.txt)" + Chr$(0) + "*.txt" + Chr$(0) + "All Files (*.*)" + Chr$(0) + "*.*" + Chr$(0) ' Nom du fichier OFName.lpstrFile = UneChaine & Space$(254 - Len(UneChaine)) OFName.nMaxFile = 255 OFName.lpstrFileTitle = Space$(254) OFName.nMaxFileTitle = 255 'Répertoire par défaut OFName.lpstrInitialDir = "C:" 'Titre de la boite de dialogue OFName.lpstrTitle = "Enregistrer sous ... " 'Extension par défaut OFName.lpstrDefExt = ".txt" 'no extra flags OFName.flags = 0 'Affichage de la boie de dialogue Enregistrer sous ... If GetSaveFileName(OFName) Then ShowSave = Trim$(OFName.lpstrFile) Else ShowSave = "" End If End Function
Tu appeles la fonction ShowSave(...) comme suit dans ta fonction personnelle: Function Export() Dim sFile As String sFile = ShowSave("Fiche") '<--- passage du nom du fichier If sFile <> "" Then ' ici ton code de générationdu fichier <--- Dim db As DAO.Database '...
intFichier = FreeFile Open sFile For Output As intFichier ' ... Close Else MsgBox "Opération annulée" End If End Function
Bonjour J'utilise ce code dans un module J'exporte des données d'une requète vers un fichier texte que je formatte à ma guise et qui se nomme fiche.txt j'aimerais savoir si on peut modifier le code pour obtenir une boîte de dialogue demandant l'endroit où il faut enregistrer le fichier destination en parcourant les dossiers voici le code du module
Function export() Dim db As DAO.Database Dim rst As DAO.Recordset Dim intFichier As Long
'choisir la fiche DoCmd.OpenQuery "selection fiche", acNormal, acEdit
'Ouvrir le recordset Set db = CurrentDb() Set rst = db.OpenRecordset("TAMPON")
'Ouvrir le fichier texte en écriture intFichier = FreeFile Open "d:fiche.TXT" For Output As intFichier
'Parcourir les champs et écrire les infos While Not rst.EOF
Print #intFichier, "NOM" ....
' passer à l'enregistrement suivant rst.MoveNext Wend
'on ferme Close intFichier rst.Close Set rst = Nothing Set db = Nothing End Function
en fait je voudrais que lorsque l'utilisateur execute la fonction export, puisse choisir simplement la destination en parcourant les dossiers
Merci
-- A+ Eric http://www.mpfa.info/ Archives : http://groups.google.fr/group/microsoft.public.fr.access?hl=fr