Una famiglia di software per fogli di calcolo Microsoft con strumenti per l'analisi, la creazione di grafici e la comunicazione dei dati.
Non posso usare un array, perchè il range di celle da stampare cambia da foglio in foglio e non posso mettere un range che sia uguale per tutti, perchè nella stampa alcune informazioni devono essere omesse...
Public Sub m()
Dim sh As Worksheet
Dim s As String
For Each sh In Worksheets(Array("Foglio1", "Foglio2", "Foglio3"))
Select Case .Name
Case "Foglio1"
s = "B2:B20"
Case "Foglio2"
s = "C1:C30"
Case "Foglio3"
s = "A1:B20"
End Select
sh.Copy After:=sh
Application.ScreenUpdating = False
With ActiveSheet.Range(s)
.Rows.AutoFit
.PrintPreview
End With
With Application
.DisplayAlerts = False
ActiveSheet.Delete
.ScreenUpdating = True
End With
Next
Set sh = Nothing
End Sub
Ovviamente i nomi dei fogli e i riferimenti ai Range vanno modificati a seconda delle tue esigenze.