Юрий М, Спасибо огромное! то, чего не доставало самостоятельно нашел на других форумах благодаря знакомым уже пользователям (Ikki), итак мой кусок кода теперь выглядит сл. образом (для информации другим гостям этого форума):
Код |
---|
Set WBA = ThisWorkbook
Set WS1 = ActiveSheet
Set WS2 = Choose(Right(WS1.CodeName, 2), _
Month_01, _
Month_02, _
Month_03, _
Month_04, _
Month_05, _
Month_06, _
Month_07, _
Month_08, _
Month_09, _
Month_10, _
Month_11, _
Month_12)
|
само-собой это лишь малая часть кода, но теперь можно переименовывать листы в книге пользователям без опаски сбить код, обновленный код протестил, работает как часики.
Hugo, тоже огромное спасибо, но я еще "очень новичок" в VBA, и многого еще не понимаю и не знаю, но желание разбираться есть, так что разбираться буду. Не совсем понял в вашем коде, что и куда, как дойду знаниями до нужного уровня разберусь )). Быть может я не совсем ясно задачу поставил, суть в том что (на примере того же декабря) у меня в "АО 12" собраны и отсортированы из общей базы ("12") нужные мне данные в зависимости от той недели за которую я составляю отчет, но не все данные для работы кода есть на данном листе, чтобы излишне не грузить книгу формулами (вес ее увеличивается с каждой формулой) мне проще часть данных взять с активного листа ("АО 12"), а недостающие данные взять с исходного листа соответствующего месяца ("12") и потом все это перенести в другую книгу-шаблон отчета именно поэтому я и хотел присвоить переменной WS1 свойства и методы активного листа, а WS2 ориентируясь на два последних знака активного листа определить нужный мне месяц и также присвоить все свойства и методы, чтобы обращаться уже к переменным а не к листам в коде.. Мне остается потом уже в автоматически сохраненном отчете в нужное мне место и с нужным мне именем добавить немного данных с внутренней программы и все, то что раньше я копипастил вручную с двух листов, распределял где профильное где общее в течение часа, теперь у меня делается автоматически в течение нескольких секунд и корректируется еще в течение 5-10 минут. ))) Чего-то я отвлекся... В общем спасибо всем за помощь! Не раз уже убеждался что форум полезный, спасибо и создателю этого сайта!