Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Актуализация данных по схожему критерию от предыдущей даты - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
Страница 1 из 11
Модератор форума: _Boroda_, Pelena, Manyasha, SLAVICK 
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Актуализация данных по схожему критерию от предыдущей даты (Макросы/Sub)
Актуализация данных по схожему критерию от предыдущей даты
alex808 Дата: Понедельник, 08.08.2016, 15:33 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 37
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Добрый день Уважаемые специалисты. Подскажите пожалуйста как решить такую задачу:
Есть два массива (таблицы): Первая это начисления, а вторая доначисления. При этом доначисления по одному и тому же счету может происходить многократно. Скажем, некий счет tt354 может иметь исходное начисление 500, в следующем месяце 515, а еще через пару месяцев 600....Соответственно, первое изменение будет +15 от 500, а через пару месяцев +85 (85 - потому что +15 было предыдущим изменением)..В примере, исходная таблица желтая, таблица доначислений салатовая, а итоговая не раскрашена...В серой таблице показано то, по какой логике должен быть расчет....Алгоритм примерно ясен: поиск предыдущей последней даты по критерию и вычисление разницы, если нет предыдущей даты, то и доначисления равны нулю...Помогите пожалуйста. Спасибо
К сообщению приложен файл: 455__--.xlsm(28Kb)
 
Ответить
СообщениеДобрый день Уважаемые специалисты. Подскажите пожалуйста как решить такую задачу:
Есть два массива (таблицы): Первая это начисления, а вторая доначисления. При этом доначисления по одному и тому же счету может происходить многократно. Скажем, некий счет tt354 может иметь исходное начисление 500, в следующем месяце 515, а еще через пару месяцев 600....Соответственно, первое изменение будет +15 от 500, а через пару месяцев +85 (85 - потому что +15 было предыдущим изменением)..В примере, исходная таблица желтая, таблица доначислений салатовая, а итоговая не раскрашена...В серой таблице показано то, по какой логике должен быть расчет....Алгоритм примерно ясен: поиск предыдущей последней даты по критерию и вычисление разницы, если нет предыдущей даты, то и доначисления равны нулю...Помогите пожалуйста. Спасибо

Автор - alex808
Дата добавления - 08.08.2016 в 15:33
Pelena Дата: Понедельник, 08.08.2016, 19:21 | Сообщение № 2
Группа: Модераторы
Ранг: Местный житель
Сообщений: 11007
Репутация: 2459 ±
Замечаний: 0% ±

Excel 2010 & Mac Excel 2011
Здравствуйте.
Не уверена, что правильно поняла.
Код
=ЕСЛИОШИБКА(ПРОСМОТР(2;1/($L$1:L1=L2);$N$1:N1)-N2;0)
К сообщению приложен файл: 455-.xlsm(28Kb)


"Черт возьми, Холмс! Но как??!!"
ЯД 41001765434816
 
Ответить
СообщениеЗдравствуйте.
Не уверена, что правильно поняла.
Код
=ЕСЛИОШИБКА(ПРОСМОТР(2;1/($L$1:L1=L2);$N$1:N1)-N2;0)

Автор - Pelena
Дата добавления - 08.08.2016 в 19:21
alex808 Дата: Понедельник, 08.08.2016, 20:07 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 37
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Спасибо работает!
Единственно, что несколько изменил формулу:
Код
=ЕСЛИОШИБКА(-ПРОСМОТР(2;1/($L$1:L87=L88);$N$1:N87)+N88;0)

Только вот у меня оба массива постоянно увеличиваются , соответственно и размерность итоговой таблицы растет..Возможно ли такой алгоритм заложить в код?
 
Ответить
СообщениеСпасибо работает!
Единственно, что несколько изменил формулу:
Код
=ЕСЛИОШИБКА(-ПРОСМОТР(2;1/($L$1:L87=L88);$N$1:N87)+N88;0)

Только вот у меня оба массива постоянно увеличиваются , соответственно и размерность итоговой таблицы растет..Возможно ли такой алгоритм заложить в код?

Автор - alex808
Дата добавления - 08.08.2016 в 20:07
Pelena Дата: Понедельник, 08.08.2016, 20:20 | Сообщение № 4
Группа: Модераторы
Ранг: Местный житель
Сообщений: 11007
Репутация: 2459 ±
Замечаний: 0% ±

Excel 2010 & Mac Excel 2011
Ну, формулу только протянуть с запасом можно.
Или в макрос её вставить


"Черт возьми, Холмс! Но как??!!"
ЯД 41001765434816
 
Ответить
СообщениеНу, формулу только протянуть с запасом можно.
Или в макрос её вставить

Автор - Pelena
Дата добавления - 08.08.2016 в 20:20
alex808 Дата: Понедельник, 08.08.2016, 20:28 | Сообщение № 5
Группа: Пользователи
Ранг: Новичок
Сообщений: 37
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Спасибо, буду учиться вставлять формулу в макрос, ибо массивы и различные отчеты предполагают быть не маленькими. Уже сейчас расчеты по файлам со сложными расчетами могут занимать около 10 минут, вот и пробую научится обходиться средствами VBA
 
Ответить
СообщениеСпасибо, буду учиться вставлять формулу в макрос, ибо массивы и различные отчеты предполагают быть не маленькими. Уже сейчас расчеты по файлам со сложными расчетами могут занимать около 10 минут, вот и пробую научится обходиться средствами VBA

Автор - alex808
Дата добавления - 08.08.2016 в 20:28
alex808 Дата: Вторник, 09.08.2016, 15:45 | Сообщение № 6
Группа: Пользователи
Ранг: Новичок
Сообщений: 37
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Все же при том, что формула отображает логику вычисления,она имеет пару изъянов:
1. Работает корректно, только после сортировки по датам, т.е. если сортировки не произошло вычисления будут не корректны
2. Опять же протягивание формулы добавит трудоемкости процесса и увеличит риск ошибок, да и формула, я думаю замедлит работу компьютера
 
Ответить
СообщениеВсе же при том, что формула отображает логику вычисления,она имеет пару изъянов:
1. Работает корректно, только после сортировки по датам, т.е. если сортировки не произошло вычисления будут не корректны
2. Опять же протягивание формулы добавит трудоемкости процесса и увеличит риск ошибок, да и формула, я думаю замедлит работу компьютера

Автор - alex808
Дата добавления - 09.08.2016 в 15:45
Pelena Дата: Вторник, 09.08.2016, 20:39 | Сообщение № 7
Группа: Модераторы
Ранг: Местный житель
Сообщений: 11007
Репутация: 2459 ±
Замечаний: 0% ±

Excel 2010 & Mac Excel 2011
Работает корректно, только после сортировки по датам

У Вас же есть макрос для копирования и сортировки. Убираем из него лишнее и вставляем строку для заполнения столбца O формулой. Работает по кнопке
К сообщению приложен файл: 7259176.xlsm(31Kb)


"Черт возьми, Холмс! Но как??!!"
ЯД 41001765434816
 
Ответить
Сообщение
Работает корректно, только после сортировки по датам

У Вас же есть макрос для копирования и сортировки. Убираем из него лишнее и вставляем строку для заполнения столбца O формулой. Работает по кнопке

Автор - Pelena
Дата добавления - 09.08.2016 в 20:39
alex808 Дата: Вторник, 09.08.2016, 21:00 | Сообщение № 8
Группа: Пользователи
Ранг: Новичок
Сообщений: 37
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Спасибо большое, я пока только что-то могу сделать записью макроса, с самим кодом полный профан, учусь только..Еще раз спасибо!!!
 
Ответить
СообщениеСпасибо большое, я пока только что-то могу сделать записью макроса, с самим кодом полный профан, учусь только..Еще раз спасибо!!!

Автор - alex808
Дата добавления - 09.08.2016 в 21:00
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Актуализация данных по схожему критерию от предыдущей даты (Макросы/Sub)
Страница 1 из 11
Поиск:

Яндекс цитирования
© 2010-2017 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!