le_canard Un jour peut être | Bon, je suis parti sur une autre base, le choix !
Après tout, l'utilisateur a son libre arbitre, alors profitons en !
Citation :
Private Sub cmdCreationExcelmajConditions_Click()
MsgBox "Sélectionnez le répertoire de destination", vbInformation, "Export vers Excel"
MsgBox EnregistrerUnFichier(Me.Hwnd, "Enregistrer Sous", "fichiers des mises à jour.csv", "C:\" )
DoCmd.SetWarnings False
DoCmd.OpenTable "Fichier des mises à jour", acNormal, acEdit
DoCmd.RunCommand acCmdSelectAllRecords
DoCmd.RunCommand acCmdDelete
DoCmd.Close acTable, "Fichier des mises à jour"
DoCmd.OpenQuery "Fichier export Excel pour mise à jour COB"
DoCmd.TransferText acExportDelim, "Fichier des mises à jour Spécification d'exportation", "Fichier des mises à jour", "fichiers des mises à jour.csv", False, ""
'Beep
MsgBox "Transfert terminé", vbInformation, "Export vers Excel"
DoCmd.SetWarnings True
|
Ca c'est pour le formulaire
Et ça c'est pour la fonction :
Citation :
Private Declare Function GetSaveFileName Lib "comdlg32.dll" _
Alias "GetSaveFileNameA" (pOpenfilename As OPENFILENAME) _
As Long
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
Function EnregistrerUnFichier(Handle As Long, Titre As String, _
NomFichier As String, Chemin As String) As String
Dim structSave As OPENFILENAME
With structSave
.lStructSize = Len(structSave)
.hWndOwner = Handle
.nMaxFile = 255
.lpstrFile = NomFichier & String$(255 - Len(NomFichier), 0)
.lpstrInitialDir = Chemin
.lpstrFilter = "Tous (*.*)" & Chr$(0) & "*.*" & Chr$(0)
.Flags = &H4
End With
If (GetSaveFileName(structSave)) Then
EnregistrerUnFichier = Mid$(structSave.lpstrFile, 1, InStr(1, structSave.lpstrFile, vbNullChar) - 1)
End If
End Function
|
Comme ça mon utilisateur choisi son repertoire, il lance le script, et zou, la table s'enregistre dans le répertoire qu'il a selectionné !
ps : Si quelqu'un à tout de même une solution je reste preneur, ça comblera ma curiosité !
Merci à toutes et tous ! |