Поскольку test()
не знает, кто является abc
, этот msg NameError: global name 'abc' is not defined
, который вы видите, должен произойти, когда вы вызываете b.test()
(вызов b.abc()
в порядке), измените его на:
class a:
def abc(self):
print "haha"
def test(self):
self.abc()
# abc()
b = a()
b.abc() # 'haha' is printed
b.test() # 'haha' is printed
Интересно, что я просто работал над чем-то другим, где это возникло ...
Чтобы указать пункт назначения, необходимо использовать Range.Copy
, а не Sheet.Copy
:
copySheet.UsedRange.Copy(currBook.Worksheets[1].Range["A1"]);
Если пункт назначения не может быть указан, то Excel помещает данные в новую рабочую книгу.