Eu modifiquei um pouco o código mencionado para fazer o seguinte.
Fazer um loop por todas as folhas
Solicite o uso do intervalo de entrada para capturar a captura de tela
Salve o Sheetname.jpg na pasta C: \ Temp. Nome do arquivo é Sheetname com extensão .jpg
Observe que isso não captura nenhum objeto incorporado, por exemplo, um Formas inseridas ou uma imagem, etc. Ele só capturará a captura de tela do intervalo de células que você inseriu para cada folha. Além disso, não existem validações rigorosas. Se você cancelar a entrada, o código resultará em um erro de tempo de execução.
O código é o seguinte. Verifique se isso atende às suas necessidades. O código original está em este SU Post
Sub exportpic()
Dim WS As Worksheet
Dim rgExp As Range
Dim CH As ChartObject
For Each WS In ThisWorkbook.Sheets
WS.Activate
Set rgExp = Application.InputBox(prompt:="Select Input Range", Type:=8)
rgExp.CopyPicture Appearance:=xlScreen, Format:=xlBitmap
Set CH = WS.ChartObjects.Add(Left:=rgExp.Left, Top:=rgExp.Top, Width:=rgExp.Width, Height:=rgExp.Height)
CH.Chart.ChartArea.Select
CH.Chart.Paste
CH.Chart.Export "C:\Temp\" & WS.Name & ".jpg"
CH.Delete
Next WS
End Sub