Yes, there is a way to print all charts in a workbook with multiple worksheets. Here are the steps:
- Open the workbook that contains the charts you want to print.
- Press the "Alt + F11" keys to open the Visual Basic Editor.
- In the Visual Basic Editor, click on "Insert" from the top menu and select "Module".
- In the new module, paste the following code:
Formula:
Sub PrintAllCharts()
Dim ws As Worksheet
Dim co As ChartObject
For Each ws In ActiveWorkbook.Worksheets
For Each co In ws.ChartObjects
co.Chart.PrintOut
Next co
Next ws
End Sub
- Press "F5" or click on the "Run" button to execute the code.
- All charts in all worksheets will be printed one by one. If you want to print them to a single file, you can select "Microsoft Print to PDF" or any other virtual printer that allows you to save the output as a PDF file.
Note: If you want to print the charts in full page size, you need to make sure that the charts are already set to the desired size before running the macro. You can do this by selecting the chart and adjusting the size in the "Format Chart Area" dialog box.