Страницы: 1
RSS
Автоматическое добавление строк/столбцов в зависимости от значения
 
Добрый день форумчане!
Помогите решить несложную задачку, сам не специалист. Файл-пример прикрепляю. Две похожие проблемы надо решить:
1. Добавлять/удалять строки (с сохранением формул) в зависимости от введённого числа сотрудников (всё выделено синим).
2. Добавлять/удалять столбцы в зависимости от количества дней в отчётном месяце (всё красным).
Уверен, что это уже не раз обсуждалось, но то что я просмотрел не дало ответа на вопросы. Если не трудно, помогите с решением.
С уважением, Крестовников Андрей.
P.S. Версия Excel 2010, но решение нужно с более старых, можно с 2003.
Изменено: kaffetin - 02.05.2013 22:41:48
 
вот в этой теме обсуждалось подобное без макросов http://planetaexcel.ru/forum/index.php?PAGE_NAME=message&FID=8&TID=32420&MID=281783#message281783
Если очень захотеть - можно в космос полететь ;)
 
Спасибо, с календарём ваш способ более чем уместен.
Но как быть с табелем, где кол-во работников может изменяться в широких пределах и чёткая таблица необходима? Нужен макрос? Подскажите, где посмотреть?
 
Попробуйте, только названия месяцев надо вписывать с большой буквы!
Изменено: lexey_fan - 03.05.2013 20:00:59
Если очень захотеть - можно в космос полететь ;)
 
Спасибо, функционирует. Только есть проблемка: строки не удаляются/добавляются, а скрываются/открываются. В принципе это подходит, если заранее сделать большую таблицу и протянуть в ней формулы, то всё нормально работает. Беда в том, что дальше 95-й строки уже не скрывается, то есть таблица ограничена 94 работниками...возможно и этого мне будет достаточно. А как мне теперь разобраться с этой системой, чтобы можно было перенести ячейки ввода и прочие изменения производить? Да и заглавная буква в месяце не очень...но сейчас и так уже отлично, ещё раз спасибо!
 
Если хотите сделать больше работников то в модуле листа в строке цикла вместо for i = 7 to 100
напишите for i = 7 to 1000 в итоге получите 994 работника, но работать будет медленней, для того что бы протянуть по таблице формулы и тд и тп, поставть месяц январь и 100 человек у Вас развернёт полностью таблицу, и делать можно что хотите, так же допустим при смене месяца можно дописать очустку всего табеля...в приложении работают и месяцы и с маленькой буквой и с большой
Если очень захотеть - можно в космос полететь ;)
 
Спасибо огромное за помощь!
"Модуль листа" это где? Как мне понять, что заставляет таблицу меняться, формул не видно. Насчёт протягивать я так сразу и поступил, но мне нужно будет править саму структуру, например ячейки ввода и прочее. Где это смотреть, подскажите?
P.S. В феврале 27 дней)
 
Цитата
kaffetin пишет:
В феврале 27 дней
Это в каком году?
 
Про 27 дней, оштбочка вышла,
в коде нужно заменить
If x = 28 Then Columns("Ah:AK" ;)  .ColumnWidth = 0
на
If x = 28 Then Columns("Ai:AK" ;)  .ColumnWidth = 0
будет правильное колличесто дней в феврале

как попасть в модуль листа: правой кнопкой на имени листа и "далее исходный текст", либо сочетание клавишь Alt+f11, откроется редактор VB, а далее в окне проекты находите свой лист у вас он один там!

что Вы понимаете под ячейками ввода?
Если очень захотеть - можно в космос полететь ;)
Страницы: 1
Читают тему
Loading...