其它文件里调用宏,如何会有有关问题——————————

其它文件里调用宏,怎么会有问题——————————?
我在一个Excel文件里写了一段宏,运行没有问题。然后打开另一个Excel文件,调用先前的宏,确出错了!不知为何。下面是出错的代码:目的是判断文件是否有Sheet2,没有则建立。运行结果是没有增加工作表。
。。。。。。。。。。。。
counter = 0
For Each FlagWs In ThisWorkbook.Worksheets
  If FlagWs.Name = "Sheet2" Then
  counter = 1 '有Sheet2
  Exit For
  Else
  counter = 0 '没有Sheet2
  End If
Next FlagWs
If counter = 0 Then
  Worksheets.Add after:=Worksheets("sheet1")  
  Worksheets(2).Name = "sheet2"
End If


------解决方案--------------------
ThisWorkbook有问题。