Интересный вопрос.
При размещении кода в модуле листа строка
[vba]Код
Cells(1, 1) = "Количество проданных ручек"
[/vba]
воспринимается не как
[vba]Код
ActiveSheet.Cells(1, 1) = "Количество проданных ручек"
[/vba]
а как
[vba]Код
Me.Cells(1, 1) = "Количество проданных ручек"
[/vba]
т.е. ячейка без указания родителя считается относящейся не к активному листу, а к листу с кодом.
При переносе кода в стандартный модуль все начинает работать.
Так что на выбор 2 варианта
1. Перенести код.
2. Оставить код на месте, и прописать явное указание листов.
[moder]Автор решил продолжить во фрилансе, поэтому эту тему закрываю[/moder]