|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
08.07.2020, 12:55 | #1 |
Пользователь
Регистрация: 21.08.2018
Сообщений: 15
|
Макрос, по условию подставляет данные в другие таблицы и возвращает результат
Доброго времени суток, уважаемые форумчане.
Помогите пожалуйста в разработке макроса: Необходимо, что бы данные из этой таблицы (дата договора, дата оплаты 1-5, сумма оплаты 1-5), подставлялись в расчетные таблицы на листах 1-5, в соответствии с условием (столбец условие), если условие 1 - то в расчетную таблицу на листе 1, если условие 2 - то в расчетную таблицу на листе 2, если условие 3 - то в расчетную таблицу на листе 3, если условие 4 - то в расчетную таблицу на листе 4, если условие 5 - то в расчетную таблицу на листе 5, И в крайний столбец "Итог" этой таблицы возвращалось итоговое значение из таблиц Строк в данной таблице гораздо больше, и их количество постоянно разное |
08.07.2020, 14:15 | #2 | |
2 the Nation Glory
Старожил
Регистрация: 27.05.2014
Сообщений: 3,289
|
Посколько файл формата xlsx то просьба
Цитата:
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы. |
|
08.07.2020, 14:49 | #3 |
Пользователь
Регистрация: 21.08.2018
Сообщений: 15
|
|
14.07.2020, 10:11 | #4 |
Пользователь
Регистрация: 21.08.2018
Сообщений: 15
|
Sub Macr()
All = Cells.SpecialCells(xlCellTypeLastCe ll).Row With Sheets("Данные") For a = 1 To All Set shData = Worksheets("Данные") If Cells(a, 3) = 1 Then Set sh = Worksheets("1") GoTo EngineNotStarted ElseIf Cells(a, 3) = 2 Then Set sh = Worksheets("2") GoTo EngineNotStarted ElseIf Cells(a, 3) = 3 Then Set sh = Worksheets("3") GoTo EngineNotStarted ElseIf Cells(a, 3) = 4 Then Set sh = Worksheets("4") GoTo EngineNotStarted ElseIf Cells(a, 3) = 5 Then Set sh = Worksheets("5") EngineNotStarted: sh.Range("A2") = _ shData.Cells(a, 2).Value2 sh.Range("B5") = _ shData.Cells(a, 4).Value2 sh.Range("C5") = _ shData.Cells(a, 5).Value2 sh.Range("B6") = _ shData.Cells(a, 6).Value2 sh.Range("C6") = _ shData.Cells(a, 7).Value2 sh.Range("B7") = _ shData.Cells(a, 8).Value2 sh.Range("C7") = _ shData.Cells(a, 9).Value2 sh.Range("B8") = _ shData.Cells(a, 10).Value2 sh.Range("C8") = _ shData.Cells(a, 11).Value2 sh.Range("B9") = _ shData.Cells(a, 12).Value2 sh.Range("C9") = _ shData.Cells(a, 13).Value2 shData.Cells(a, 14).Value2 = _ sh.Range("D10") End If Next a End With End Sub Последний раз редактировалось Alexey200999; 14.07.2020 в 10:16. |
14.07.2020, 12:11 | #5 |
2 the Nation Glory
Старожил
Регистрация: 27.05.2014
Сообщений: 3,289
|
это Ваш рабочий код или набросок?
Код:
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы. |
14.07.2020, 12:15 | #6 |
Пользователь
Регистрация: 21.08.2018
Сообщений: 15
|
Aleksandr H.,
Это набросок, данных в каждой строке более пятидесяти, в рассчетных таблицах гораздо больше рассчетов, а строк на первой странице более 1000. |
14.07.2020, 12:24 | #7 |
Пользователь
Регистрация: 21.08.2018
Сообщений: 15
|
Aleksandr H.,
Спасибо за доработку, высший класс! Суть понятна, буду допиливать. Огромнейшее СПАСИБО! |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Перенос данных с общего листа на другие по условию | кнопка 01011991 | Microsoft Office Excel | 0 | 23.01.2015 16:05 |
учебная задача: запрос SQL, который выводит из таблицы данные по условию | Nixon91 | Помощь студентам | 1 | 13.05.2014 06:45 |
Макрос подставляет формулы при нажатии на кнопку | Bocul | Microsoft Office Excel | 9 | 04.09.2013 23:47 |
макросом выдернуть слова из одного столбца в другие по мудреному условию | z00lu | Microsoft Office Excel | 10 | 23.06.2013 15:35 |
Внесение в поле таблицы сумму значений из другой таблицы по условию | Сурка | SQL, базы данных | 2 | 25.12.2011 17:47 |