bonjour
J'essaye de trouver un moyen d'ouvrir une fenêtre afin de sauvegarder un fichier Excel, en ouvrant directement un dossier spécifique nommé "AGENCE" dans le Network"Z"
Si j'écris
sRep = WshShell.SpecialFolders("desktop"), ca fonctionne et ça ouvre la fenêre du Bureau.
Mais si j'écris
sRep = WshShell.SpecialFolders("z:/nom dossier/nom sous dossier"), ça ne fonctionne pas et ça n'ouvre que le dossier C:
Si quelqu'un y comprend un peu.....
Voici le code complet:
Sub save_excel() ' save a copy as excel
Dim FileExtStr As String
Dim FileFormatNum As Long
Dim Sourcewb As Workbook
Dim ret As Integer
Dim destwb As Workbook
Dim TempFilePath As String
Dim TempFileName As String
Dim OutApp As Object
Dim OutMail As Object
Dim S As Shape
Dim sNomFic As String, sRep As String, WshShell As Object
With Application
.ScreenUpdating = False
.EnableEvents = False
End With
' Creer une instance Windows Script pour retrouver le chemin du dossier AGENCE
Set WshShell = CreateObject("WScript.Shell")
sRep = WshShell.SpecialFolders("DESKTOP")
Set WshShell = Nothing
' Definir le nom du fichier a enregistrer
sNomFic = Range("b1") & " " & Range("c1") & " " & "pnr" & "" & Range("j3") & "" & ".xls"
' Enregistrer la feuille sous excel
wk1 = ThisWorkbook.FullName 'pour enregistrer via fenetre save as
With Application.FileDialog(msoFileDialogSaveAs)
.FilterIndex = 4
.InitialFileName = sRep & "\" & sNomFic
.AllowMultiSelect = False
.Title = "Selectionnez un fichier destination et cliquez sur OK"
If .Show = -1 Then
ActiveWorkbook.SaveAs Filename:=.SelectedItems(1)
ActiveWorkbook.Saved = True
Else
Exit Sub
End If
End With
ThisWorkbook.Saved = True
Application.Quit
End Sub