|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу. Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста". Название темы слишком короткое или не отражает сути вашего вопроса. Тема исчерпала себя, помните, один вопрос - одна тема Прочитайте правила и заново правильно создайте тему. |
|
Опции темы | Поиск в этой теме |
08.11.2008, 03:16 | #1 |
Старожил
Регистрация: 12.05.2007
Сообщений: 2,339
|
Зависимость чисел дней месяца от месяца
Нужны, числа в Понедельниках, Средах и Пятницах, зависят от названия месяца?
В аттаче. |
09.11.2008, 15:29 | #2 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
Валера, я формулу написал.
Только мне показалось недостаточным указывать наименование месяца. Через два месяца (если доживем) будет 2009 год, тогда как - снова код править? (или в моем случае формулу?). поэтому в ячейку пишем первый день месяца. Внимание: формула завязана на колонку В, в частности на слово "И Т О Г:" в этой колонке, поэтому нельзя исправлять слово "И Т О Г:" на "Итоги", "Итого" и что-либо другое - все рассчеты пойдут прахом. Я не стал привязываться к номеру строки, потому что завтра добавится еще одна торговая точка или Ц-31 будет записано тремя строками, как некоторые, тогда привязка к строке станет неправильной, все поплывет.
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
09.11.2008, 16:13 | #3 | |
Старожил
Регистрация: 12.05.2007
Сообщений: 2,339
|
Цитата:
Только, почему в Д1 меняю 01.06.2008 на 01.01.2009 и месяц начался не с Пятницы(2), а с Понедельника(5)? Учитывает праздники? Игорь я понял, не до конца объяснил. Мои рабочие дни Понедельник, Среда и Пятница, нет праздников, поэтому если, Мои рабочий день месяца попадает на Пятницу или на Среду то и в Офисе.xls он первым отображается, а не строго с понедельника. Извиняюсь за ошибку в объяснениях!! Последний раз редактировалось valerij; 09.11.2008 в 16:45. |
|
09.11.2008, 22:52 | #4 |
Форумчанин
Регистрация: 26.11.2006
Сообщений: 584
|
Может проще использовать форматы:
для месяца ММММ для дня недели ДДДД |
10.11.2008, 12:26 | #5 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
Задачка решилась через вложенные друг в друга ЕСЛИ. Хорошо что в неделе 7 дней, а то бы уровней вложения не хватило...
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
10.11.2008, 14:32 | #6 |
Старожил
Регистрация: 12.05.2007
Сообщений: 2,339
|
|
11.11.2008, 11:55 | #7 |
Старожил
Регистрация: 12.05.2007
Сообщений: 2,339
|
Игорь, а для трех листов, пришлось сделать так, естественно, пришлось вставка-имя тоже менять, красным(для упрощения, два показал)
Select Case Sh.Index Case 1 To 3 With Application .EnableEvents = False For iCount& = 0 To 13 If Sh.Index = 1 Then GoTo 1 If Sh.Index = 2 Then GoTo 2 If Sh.Index = 3 Then GoTo 3 1: With Sh.Range("E1").Offset(iCount& * 28) .FormulaR1C1 = _ "=нм1+INT(Ит/3)*7+MID(IF(дн=1,""024"",IF(дн=2,""136"",IF(дн=3, ""025"",IF(дн=4,""146"",IF(дн=5,""0 35"",IF(дн=6,""246"",""135"")))))), 1+MOD(Ит,3),1)" .Value = .Value End With GoTo 4 2: With Sh.Range("E1").Offset(iCount& * 28) .FormulaR1C1 = _ "=нм2+INT(Ит/3)*7+MID(IF(дн2=1,""024"",IF(дн2=2, ""136"",IF(дн2=3,""025"",IF(дн2=4," "146"",IF(дн2=5,""035"",IF(дн2=6,"" 246"",""135"")))))),1+MOD(Ит,3),1) " .Value = .Value End With GoTo 4 3: With Sh.Range("E1").Offset(iCount& * 28) .FormulaR1C1 = _ "=нм3+INT(Ит/3)*7+MID(IF(дн3=1,""024"",IF(дн3=2, ""136"",IF(дн3=3,""025"",IF(дн3=4," "146"",IF(дн3=5,""035"",IF(дн3=6,"" 246"",""135"")))))),1+MOD(Ит,3),1) " .Value = .Value End With 4: Дальнейший код Сюда вставить переменную, нельзя? "=нм1+INT(Ит/3)*7..... |
11.11.2008, 13:23 | #8 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
Валера,
добавил формулу, которая считает количество рабочих дней для заданного месяца. Их бывает от 12 до 14. см. правее даты. Еще правее ячейки с цифрами 1,3,5 - это номера дней в неделе для понедельника, среды, пятницы. Нужны в расчетах. Не удаляйте. В 10-й колонке есть альтернативная формула, которая считает количество рабочих дней. Эта формула привязана только к одной ячейке (с датой).
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
11.11.2008, 17:19 | #9 |
Старожил
Регистрация: 12.05.2007
Сообщений: 2,339
|
|
14.11.2008, 01:13 | #10 |
Старожил
Регистрация: 12.05.2007
Сообщений: 2,339
|
Игорь!
А даты в Е:Е, можно выделить красным, если она, дата, соответствует Понедельнику? У меня по понедельникам идет отчет за три дня(Пят., Суб. и Воскр.), я бы тогда, автоматом проставил бы числа в С:С(Дата - Накл.) |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Зависимость от компьютерных игр | Rembo | Свободное общение | 66 | 02.10.2014 22:56 |
Номер месяца | olimpus | Microsoft Office Excel | 2 | 25.09.2008 19:05 |
Зависимость от форума | Simply-Art | Свободное общение | 18 | 14.06.2008 23:59 |
Вывод числа месяца (Pacal) | [Smarik] | Помощь студентам | 13 | 18.01.2008 03:44 |
Консолидация в зависимости от числа месяца | Smile E | Microsoft Office Excel | 6 | 11.09.2007 21:24 |