![]() |
|
Модераторы: mihanik |
![]()
|
|
| dosh |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 31.5.2006 Репутация: нет Всего: нет |
Прошу помочь. Задача: есть диапазон данных - первый столбец - дата, в остальных числовые данные. Необходимо в начале нового месяца делать выборку за прошедший месяц, переносить эти ячейки в другую книгу и вставлять строку с итогом по столбцам. В следующем месяце - тоже самое, но ниже итога предыдущего месяца. Даты идут с разрывами, то есть некоторые дни месяца пропущены.
Это сообщение отредактировал(а) dosh - 31.5.2006, 12:45 |
|||
|
||||
| Naghual |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1893 Регистрация: 15.5.2004 Где: Украина, Днепр Репутация: 7 Всего: 49 |
Что именно не получается?
Что уже сделано? -------------------- Я желаю всем Счастья! |
|||
|
||||
| dosh |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 31.5.2006 Репутация: нет Всего: нет |
Да, ничего не сделано. Не могу придумать алгоритм, по которому делать выборку, так как диапазон строк в каждом месяце разный. Сумму переменного диапазона строк надо считать. Ничего путного в голову не лезет! По сути, два главных вопроса - выборка за месяц и сумма столбцов внутри этой выборки.
|
|||
|
||||
| sexton |
|
|||
![]() sexton=Пономарь (eng) ![]() ![]() Профиль Группа: Участник Сообщений: 503 Регистрация: 5.5.2004 Где: Ульяновск Репутация: нет Всего: 9 |
А месяцы хоть как-то разделены между собой?
|
|||
|
||||
| dosh |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 31.5.2006 Репутация: нет Всего: нет |
Нет, не разделены. Исходную таблицу заполняет макрос. День закончился - данные записываются в таблицу - проставляется дата в первой колонке.
|
|||
|
||||
| Naghual |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1893 Регистрация: 15.5.2004 Где: Украина, Днепр Репутация: 7 Всего: 49 |
Циклически пробегаеш по строкам. Следиш за датами. В пределах одного месяца делаеш накопление временных значений. По изменению месяца выполняеш действие над строками.
-------------------- Я желаю всем Счастья! |
|||
|
||||
| dosh |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 31.5.2006 Репутация: нет Всего: нет |
А подробнее про накопление можно?
|
|||
|
||||
| Naghual |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1893 Регистрация: 15.5.2004 Где: Украина, Днепр Репутация: 7 Всего: 49 |
-------------------- Я желаю всем Счастья! |
|||
|
||||
| dosh |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 5 Регистрация: 31.5.2006 Репутация: нет Всего: нет |
Спасибо, за подсказку. Получилось вот это:
Dim A Dim B Dim I Dim C Dim iVar1 As Integer Dim k k = 0 A = Month(Date) - 1 B = Range("A1").End(xlDown).Row For I = 1 To B C = Month(Range("$A$" & I).Value) If A = C Then iVar1 = iVar1 + Cells(I, 2).Value k = k + 1 End If Next I Range("B" & k + 1).Value = iVar1 Основа работает, а остальное уже ерунда. Огромное спасибо! |
|||
|
||||
![]()
|
| Правила форума "Программирование, связанное с MS Office" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще!
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Программирование, связанное с MS Office | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |