|
- Sub 滚动照片()
- Dim rng As Range
- Dim imgChart As Chart
- Dim imgPath As String
- Dim wi As Worksheet
- ' 设置要导出的表格区域
- Set rng = ThisWorkbook.Sheets("窗体模版").Range("A1:AL53")
- ' 创建一个临时图表
- Set imgChart = ThisWorkbook.Charts.Add
- ' 将表格区域复制到临时图表中
- rng.CopyPicture Appearance:=xlPrinter, Format:=xlPicture
- ' 尝试使用不同的粘贴方法
- With imgChart
- ' 尝试直接作为图表的一部分粘贴
- .ChartArea.Select
- ActiveSheet.Paste
-
- ' 检查图表是否已正确粘贴图像
- If .Shapes.Count = 0 Then
- MsgBox "图表没有粘贴任何图像。"
- GoTo NextStep
- End If
-
- ' 修改保存路径为当前工作簿的路径
- imgPath = ThisWorkbook.Path & "\滚动照片\ExportedImag.jpg"
-
- ' 导出图表为图片
- On Error Resume Next ' 忽略错误
- .Export fileName:=imgPath, FilterName:="JPG"
- If Err.Number <> 0 Then
- MsgBox "导出图表时发生错误: " & Err.Description
- End If
- On Error GoTo 0 ' 恢复正常错误处理
- NextStep:
- ' 删除临时图表
- .Delete
- End With
- ' 清理剪贴板
- Application.CutCopyMode = False
- ' 提示图片已导出(如果实际导出了的话)
- If Err.Number = 0 Then
- MsgBox "图片已导出到 " & imgPath
- Else
- MsgBox "图片导出失败。"
- End If
- End Sub
复制代码 我想要在.
ChartArea.Select
ActiveSheet.Paste后面加上尺寸的宽度和高度都不行,
[backcolor=rgba(245, 246, 249, 0.5)] .ChartArea.Width = 800 ' 设置宽度 .ChartArea.Height = 600 ' 设置高度
[backcolor=rgba(245, 246, 249, 0.5)]总是不行,有没有哪位老师帮忙看一下。有没有什么办法让其导出来的照片是excel中(A1:AL53)范围,大小不发生变化。
|
|