I am assuming your "Then" statements are the sheet names. Try something
similar to:
If PhaseCheckBox.Value = True Then Sheets("131 Phase1").select false
If PhaseCheckBox.Value = True Then sheets( "131 Phase2").select false
........
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Using Select with False will group the sheet with the current active sheet.
You may need to adjust to deal with the current active sheet or remove false
from the first line.
--
Damon Longworth
2007 Excel / Access User Conference
London, England - Currently rescheduled
St. Louis, Missouri - Oct 24-26, 2007
www.ExcelUserConference.com/
"Darkstar" <(E-Mail Removed)> wrote in message
news:04135A43-529B-49AB-B8DC-(E-Mail Removed)...
I tried this but when the varible is empty it calses an error. I can't
figure out any way around this. Thanks for any help.
Dim Phase1, Phase2, Shop1, Shop2, RF, Status
If PhaseCheckBox.Value = True Then Phase1 = "131 Phase1" Else Phase1 = ""
If PhaseCheckBox.Value = True Then Phase2 = "131 Phase2" Else Phase2 = ""
If ShopCheckBox.Value = True Then Shop1 = "131 Shop1" Else Shop1 = ""
If ShopCheckBox.Value = True Then Shop2 = "131 Shop2" Else Shop2 = ""
If RFCheckBox.Value = True Then RF = "RF Sheet" Else RF = ""
If StatusCheckBox.Value = True Then Status = "STATUS" Else Status ""
Sheets (Array(Phase1, Phase2, Shop1, Shop2, RF, Status)).select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True