メッセージボックスを使用してワークシートのすべてのグラフを保存するフォルダを尋ねるマクロを作成しましたが、グラフは目的のフォルダではなく親に保存されます1。たとえば、代わりにCで保存するvbaで正しいフォルダを選択する
:それはCで保存します\親の\ desiredFolder:\親\
はあなたの助けをいただき、ありがとうございます。
Sub EXPORTCHARTS()
MsgBox ("Seleziona la cartella dove vuoi esoportare i grafici")
ActiveSheet.Select
ActiveWindow.Zoom = 400
Dim sItem As String
Dim dlgOpenFolder As FileDialog
Set dlgOpenFolder = Application.FileDialog(msoFileDialogFolderPicker)
dlgOpenFolder.Filters.Clear
With dlgOpenFolder
.Title = "Select a Folder"
.AllowMultiSelect = False
.InitialFileName = strPath
If .Show <> -1 Then GoTo NextCode
sItem = .SelectedItems(1)
End With
NextCode:
GetFolder = sItem
Set fldr = dlgOpenFolder
' ---------------------------------------------------------
Dim objCht As ChartObject
i = 1
For Each objCht In ActiveSheet.ChartObjects
objCht.Chart.Export Filename:=i & ".jpg", FilterName:="JPG"
i = i + 1
Next objCht
' ---------------------------------------------------------
ActiveWindow.Zoom = 50
End Sub
実は 'sItem'または' GetFolder'が使用するパスが含まれている可能性がある変数になります。 'fldr'は単に' FileDialog'オブジェクトへのポインタです。しかし、基本的な問題は正しい - 保存の一環としてユーザーが選択したパスを使用していない。 – YowE3K
ああええ!適切な答えを洗い出してくれてありがとう:-) – Jbjstam
ありがとうございました。できます – ilFonta