Bonjour tout le monde,
J'aimerai enregistrer automatiquement une certaine plage de cellules dans un dossier ciblé sous format jpeg, et cela sans fenêtre de validation.
J'ai bien fouillé sur le forum, et dans le topic https://forum.excel-pratique.com/viewtopic.php?t=88624 j'ai réussi à en tirer le code ci-dessous qui effectue la manipulation.
Cependant avec la fonction
Application.GetSaveAsFilename
, je n'arrive pas à faire en sorte que le dossier soit sélectionné automatiquement, plutôt que d'ouvrir la fenêtre d'enregistrement pour que je la sélectionne.
J'ai recherché des infos sur le net sur l'application GetSaveAsFilename, j'ai aussi tenté d'ajouter un "ChDir", mais en vain.
Est-ce que quelqu'un pourrait m'aiguiller sur ça ?
Je vous remercie d'avance !
Sub Impression_KAMI()
Application.ScreenUpdating = False
On Error GoTo ExportErreur
Dim Plage As Range
Dim FichierImage As Variant
Set Plage = Range("A5:I47").Cells 'Ma plage de cellule à copier
Plage.CopyPicture Appearance:=xlScreen, Format:=xlPicture
With ActiveSheet.ChartObjects.Add(Left:=Plage.Left, Top:=Plage.Top, Width:=Plage.Width, Height:=Plage.Height)
.Name = "ExportImage"
.Activate
End With
ActiveChart.Paste
ChDir "C:\Users\R\Pictures\" 'Pour direction du dossier
FichierImage = Application.GetSaveAsFilename(InitialFileName:="KAMI.jpg", fileFilter:="Image file (*.jpg), *.jpg")
If FichierImage <> False Then
ActiveSheet.ChartObjects("ExportImage").Chart.Export FichierImage
End If
ActiveSheet.ChartObjects("ExportImage").Delete
Application.ScreenUpdating = True
Exit Sub
ExportErreur:
MsgBox "Une erreur est survenue..."
Application.ScreenUpdating = True
End Sub