Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.03.2013, 15:00   #1
valerij
Старожил
 
Аватар для valerij
 
Регистрация: 12.05.2007
Сообщений: 2,339
По умолчанию Применить макрос

Хотел, самостоятельно, но неделя в пустую.
Есть замечательный макрос(2), по моему IgorGO сделал, он всё чётко делает.
А вот в моём м11, я каждый месяц корректирую запись в [e], оч. утомительно.

А как бы приспособить м2 к моему.
Чувствую, что точно можно, а знаний не хватает.
Это последнее, что я правлю в своих двух рабочих программ.

Я вот так делаю(а может так и не надо!!)
Код:
iAd0 = Sheets(1).Range("C" & i).Offset(iCount& * 28).Row
Мне выводит адреса, что надо, но как их использовать - тупик.
В прищепке реальный месяц.

Буду признателен за помощь.
Вложения
Тип файла: rar zxc.rar (24.5 Кб, 17 просмотров)
valerij вне форума Ответить с цитированием
Старый 24.03.2013, 16:48   #2
doober
Старожил
 
Аватар для doober
 
Регистрация: 02.05.2009
Сообщений: 3,907
По умолчанию

Ничего не понял.
Иду на экстрасенса учиться.
Анализ,обработка данных Недорого
doober вне форума Ответить с цитированием
Старый 24.03.2013, 17:25   #3
valerij
Старожил
 
Аватар для valerij
 
Регистрация: 12.05.2007
Сообщений: 2,339
По умолчанию

Цитата:
Сообщение от doober Посмотреть сообщение
Ничего не понял.
Иду на экстрасенса учиться.
Чё именно?
В М2 или М11?
Объясню.
При запуске М2, он ставит даты, согласно моим раб дням, почему так?
У меня рабочие дни - пон. среда, пятница.
Накладные ко мне на обработку поступят в пятницу 1-03-13, за два предыдущих дня, т. е. 27, 28 февраля и уже к марту м-цу не имеет отношения.
А 4-03-13, поступят уже за март 1, 2, 3 числа уже нужны для обработки за март.
Т. е. количества бумаг - за 3-и дня в понед., 2-а дня - среда, 2-а дня - пятница, и т. д.

Понятно, что сдвиг моих раб. дней может быть по разному, например:
Январь, начнётся со 2-01-13, а бумаги за 31 декабря не учитываю, а 1 января на учёт.
Февраль, аналог марту, но разное количества дней. Ну и т. д.
И вот когда нет совпадений(январь/февраль), приходится переправлять [e]....

Данные с листа Март пойдут с е31 на лист2[h1261], [e32], на лист2 [h1282]... как в м11
А вот данные с листа Март с е34, е35, е36 пойдут в те же яч. но лист3 в прищепке, нет
е37, е38, е39 пойдут в те же яч. но лист4
е40, е41, е42 пойдут в те же яч. но лист5

Понятно?

Последний раз редактировалось valerij; 24.03.2013 в 17:42.
valerij вне форума Ответить с цитированием
Старый 24.03.2013, 22:12   #4
valerij
Старожил
 
Аватар для valerij
 
Регистрация: 12.05.2007
Сообщений: 2,339
По умолчанию

Ну что господа скажете?
Не уж то не понятно?
Или выложить настоящий оригинал?
valerij вне форума Ответить с цитированием
Старый 24.03.2013, 23:31   #5
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

Валера нет смысла разбирать твои макросы. Обясни на словах что есть исходные данные, и куда они должны попасть. может тогда... кто-то и сделает
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 25.03.2013, 00:05   #6
valerij
Старожил
 
Аватар для valerij
 
Регистрация: 12.05.2007
Сообщений: 2,339
По умолчанию

Цитата:
Сообщение от IgorGO Посмотреть сообщение
Валера нет смысла разбирать твои макросы. Обясни на словах что есть исходные данные, и куда они должны попасть. может тогда... кто-то и сделает
Вот пустой не рабочий файл. Там всего 3 макроса, не для разборки, а только для наглядности от куда и куда копируются данные.
В Лист1 - 3, все красные нули, это данные. Название торговых точек = названиям листов.

Например, рассмотрим месяц Январь - 02.01.13:
В3 - У-1 и есть такой лист.
Туда в лист(У-1), должны попасть данные с 1.01.13
это Лист(Январь)е4 значение отобразится в Лист(У-1)н22.
Значение Лист(Январь)е7 отобразится в Лист(У-2)н22.
Значение Лист(Январь)е10 отобразится в Лист(ЛЕН)н22.
и т. д.
Значение Лист(Январь)i4 отобразится в Лист(РЫН)н22.
Значение Лист(Январь)i9 отобразится в Лист(КИОСК)н22
Значение Лист(Январь)i15 отобразится в Лист(КОТ)н22

Переходим на сл. рабочиц день - 04.01.13
Всё то же самое, только другие ячейки.

IgorGO
По моему мы уже как то пытались, макос2 твой?
Вложения
Тип файла: rar ABC.rar (224.0 Кб, 8 просмотров)

Последний раз редактировалось valerij; 25.03.2013 в 00:09.
valerij вне форума Ответить с цитированием
Старый 25.03.2013, 11:39   #7
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

Валера, это - не обьяснения...
можно было так написать: данные с листа январь надо разнести по остальным листам - коротко и понятно.
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 25.03.2013, 15:00   #8
valerij
Старожил
 
Аватар для valerij
 
Регистрация: 12.05.2007
Сообщений: 2,339
По умолчанию

Цитата:
Сообщение от IgorGO Посмотреть сообщение
Валера, это - не обьяснения...
можно было так написать: данные с листа январь надо разнести по остальным листам - коротко и понятно.
Не много не так.
Цитата:
Данные с листов: январь, февраль, март(1-й квартал) - надо разнести по остальным листам, так, что бы в следующих месяцах/кварталах(апрель, май июнь.....), разноска проходила без ручной коррекции.
valerij вне форума Ответить с цитированием
Старый 27.03.2013, 21:59   #9
valerij
Старожил
 
Аватар для valerij
 
Регистрация: 12.05.2007
Сообщений: 2,339
По умолчанию

Сделал сам, правда не единый макрос, а вставил в каждый лист5-13
Как объединиться в единый, пока не знаю. Всё работает. Остались мелочи. Главное не придётся править длиннющие....
Пример для пару листов 5 и 6. Опускаю промежуточные вычисления.
Лист5
Код:
Private Sub Worksheet_Activate()
'********** Ищем только начало месяца(1-е число) **************
                    iCons = 0: y = 1: iDop = 0: iRow = 3: L = 3
For iNach = 3 To 5
    If Sheets(L).Cells(iNach, 3) = 1 Then iRow = _
        Sheets(L).Cells(iNach, 3).Row: iCons = 0: Exit For
    iCons = 28
Next
'******************************* Ут-1 **************************
With Sheets(L)
1:  For x = iRow To 5
        If .Cells(x + iCons, 3) = y Then _
            Cells(1261 + iDop, 8) = .Cells(x + iCons, 5): _
            y = y + 1: iDop = iDop + 21
    Next
        iCons = iCons + 28: iRow = 3
        If iCons = 364 Then GoTo m
    GoTo 1
m: End With
'****************************************************************
End Sub
Лист6

Код:
'****** Ищем только начало месяца(1-е число) *********************
                    iCons = 0: y = 1: iDop = 0: iRow = 6: L = 3
For iNach = 6 To 8
    If Sheets(L).Cells(iNach, 3) = 1 Then _
        iRow = Sheets(L).Cells(iNach, 3).Row: iCons = 0: Exit For
    iCons = 28
Next
'******************************* Ут-2 ****************************
With Sheets(L)
1:  For x = iRow To 8
        If .Cells(x + iCons, 3) = y Then _
            Cells(1261 + iDop, 8) = .Cells(x + iCons, 5): _
            y = y + 1: iDop = iDop + 21
    Next
        iCons = iCons + 28: iRow = 6
        If iCons = 364 Then GoTo m
    GoTo 1
m: End With
'******************************************************************
valerij вне форума Ответить с цитированием
Старый 27.03.2013, 23:27   #10
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

Валера, а чем принципиальным отличаются листы 5 и 6, что понадобилось 2 макроса?
для листов 7, 8, 9 - свои макросы?
разве эти все листы не одной структуры?
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как применить функцию Predator199 PHP 6 05.08.2012 23:58
Подпрограммы! как применить? gylayko Помощь студентам 6 31.10.2011 18:03
Какую формулу применить? rusgaz Microsoft Office Excel 3 18.10.2010 23:43
Как применить изменение в реестре? KWN, lnc Общие вопросы Delphi 2 11.05.2009 00:10
Не получается применить DecodeDate sergey113 Помощь студентам 2 27.03.2009 23:12