Private Sub CommandButton1_Click()
Sheet1.PrintPreview True
For i = 1 To Worksheets.Count
strRes = MsgBox("Do you want to print " & Worksheets.Item(i).Name, vbOKCancel, "Print Preview")
If strRes = 1 Then
Worksheets.Item(i).PrintPreview True
End If
Next
End Sub
Here is a simple test you can perform. Throw the code into a blank workbook put some random text on each sheet on Page 1, Page2 and any other page. Now print with the code i provided. You will notice that only sheet 1 of each sheet prints out.
Here is just that file. The code runs through perfectly. So you need to ask what is different between the test environment and your file.