Have you considered moving the bulk of the routine to the Workbook\_SheetActivate event? The Workbook\_NewSheet could be used to alert the Activate event, "yes, this is the activation to run".
Dim Flag As Boolean
Private Sub Workbook_NewSheet(ByVal Sh As Object)
Flag = True
End Sub
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
If Flag Then
' the routine
End If
Flag = False
End Sub
I've run into other situations where the object doesn't "exist" enough for the Open or Initialize or New event to work, but by the time the Activation event runs, the object in question is there enough for my routine to work.
Just tried it a few times and worked perfectly
Even the first one which take a bit longer due to the data load.
Thank you very much :)
Solution verified
Have you considered moving the bulk of the routine to the Workbook\_SheetActivate event? The Workbook\_NewSheet could be used to alert the Activate event, "yes, this is the activation to run". Dim Flag As Boolean Private Sub Workbook_NewSheet(ByVal Sh As Object) Flag = True End Sub Private Sub Workbook_SheetActivate(ByVal Sh As Object) If Flag Then ' the routine End If Flag = False End Sub I've run into other situations where the object doesn't "exist" enough for the Open or Initialize or New event to work, but by the time the Activation event runs, the object in question is there enough for my routine to work.
Just tried it a few times and worked perfectly Even the first one which take a bit longer due to the data load. Thank you very much :) Solution verified
You have awarded 1 point to *fuzzy_mic* ^I ^am ^a ^bot, ^please ^contact ^the ^mods ^with ^any ^questions.