我的Excel文件出现问题。我正在从其他文件复制图形并将它们作为工作表粘贴,因此它们现在是“图表工作表”。所有这一切都很好,但问题出在打印时。我有一个页面设置宏,用于设置页边距和页脚,如果我使用打印按钮将其打印出来就很好了。图形很好地居中,白色空间四周相等,打印方式与打印预览中显示的相同。问题是当我使用以下任一代码从VBA打印时:
Sheets("83IO").Activate
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
或
Sheets("83IO").Activate
ActiveChart.ChartArea.Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
IgnorePrintAreas:=False
这些打印输出将图表放在一边,并将底部和右侧的空白加倍。改变边距似乎并没有改变这些打印输出,我不知道该怎么做。
我尝试将IgnorePrintAreas
设置为true,因为这些页面只是图形,结果是相同的。
感谢您提供任何帮助。
答案 0 :(得分:0)
尝试使用 .PageSetup.PrintArea
:
Application.ScreenUpdating = False
With Sheets("83IO")
.PageSetup.PrintArea = .Shapes(1).TopLeftCell.Address & ":" & _
.Shapes(1).BottomRightCell.Address
With .PageSetup
.CenterHorizontally = True
.CenterVertically = True
.Orientation = xlLandscape
.Zoom = 100
.FitToPagesWide = 1
.FitToPagesTall = 1
End With
.PrintPreview
End With
Application.ScreenUpdating = True