Tom’s Tutorials For Excel: Move Embedded Charts to Their Own Chart Sheet
Here is a macro that will move all embedded charts on a worksheet to their own Chart sheet.
The Select method for cell A1 (it could be any cell but I chose A1) is to avoid a run time error which could occur if an embedded chart is active when a new sheet is attempted to be added.
Sub MoveCharts()
Application.ScreenUpdating = False
Dim i%, asn$
With ActiveSheet
asn = .Name
For i = Sheets(asn).ChartObjects.Count To 1 Step -1
Sheets(asn).Activate
Range("A1").Select
.ChartObjects(i).Activate
ActiveChart.Location Where:=xlLocationAsNewSheet, Name:="Chart" & i
Next i
End With
Application.ScreenUpdating = True
End Sub


Since Excel 2007, chart sheets can no longer size with the window. This means there’s really no longer any benefit to using chart sheets.