Reagan.kha,
Thank you for your response, your solution may have worked but John's made more sense to me so I went with that one.
John,
Thanks for your help. If you have a spare moment can you review my code and tell me why it stops after the first worksheet in my array? After running the code it creates a new sheet and names it "Mach-1 Budget" and then nothing else happens. Also the code only works if I run the macro from the sheet named "Mach-1". What am I doing wrong?
Sub CreateBudgetForm()
'Misc
Dim Machs As Variant
Dim Mach As Variant
'Loop through sheets
Machs = Array("Mach-1", "Mach-2", "Mach-3", "Mach-4", "Mach-5", "Mach-6", "Mach-7", _
"Mach-8", "Mach-9", "Mach-10", "Mach-11", "Mach-12")
For Each Mach In Machs
If Range("O236") > 0 Then Worksheets.Add(After:=Worksheets(1)).Name = Mach & " Budget"
Next Mach
End Sub
Thanks
Bookmarks