VBA export as jpg



我设法实现了使用图表导出为JPG的代码。但是,当我尝试更改文件导出路径时,我得到的错误是运行时错误1004:方法"Range object"_Global失败由于路径相似,我不明白代码没有读到什么。

如果有人能帮忙,我将不胜感激。

jpg导出到*Path=ThisWorkbook.Path*Path=此工作簿。Path&"\"&范围("PDF_Folder"(。值

不导出到*Path=此工作簿。Path&"\"&范围("New_Folder"(。值

'//Creat a jpg image using charts
Dim rng As Range
Dim shtTemp As Worksheet
Dim chtTemp As Chart
Application.ScreenUpdating = False
'// Range
Set rng = Worksheets("Receipt").Range("B2:E27")
shReceipt.rows("2:27").EntireRow.AutoFit
'// Add a temp worksheet. Chart will be placed on this. It will be deleted after
Set shtTemp = Worksheets.Add
'// Add chart
Charts.Add
'// Move the chart to the new sheet and get a reference to it
ActiveChart.Location Where:=xlLocationAsObject, Name:=shtTemp.Name
Set chtTemp = ActiveChart
'// Copy and paste the range
rng.CopyPicture Appearance:=xlScreen, Format:=xlPicture
chtTemp.Paste
With ActiveChart.Parent
.Height = 520 ' resize
.Width = 360 ' resize
End With

'// Export
ChDir ActiveWorkbook.Path
Dim Name As String, Path, filename
Name = InvTable.ListColumns("Customer").DataBodyRange(r).Value
Dim Inv As Double
Inv = InvTable.ListColumns("Invoice Number").DataBodyRange(r).Value
filename = "" & Inv & "_" & Name & ".jpg"
''//This PDF folder is recognised-no error
Path = ThisWorkbook.Path & "" & Range("PDF_Folder").Value
''//This path is regonised-no error
'Path = ThisWorkbook.Path
''//This New folder creates an error (it does exist in the workbook path
''Path = ThisWorkbook.Path & "" & Range("New_Folder").Value
chtTemp.Export filename:=Path & filename

所以我找到了答案。"Excel_Folder"是单元格(1,1(中的命名范围"PDF_Folder"是单元格(1,2(中的命名范围这些范围的范围是工作簿

我将"New_Folder"定义为命名范围,并找到了路径。

最新更新