|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу. Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста". Название темы слишком короткое или не отражает сути вашего вопроса. Тема исчерпала себя, помните, один вопрос - одна тема Прочитайте правила и заново правильно создайте тему. |
|
Опции темы | Поиск в этой теме |
12.08.2008, 16:10 | #1 |
Грызун Гранита
Пользователь
Регистрация: 25.01.2008
Сообщений: 33
|
2 листа. 2 массива данных. Совмещение с отношением многие к одному.
Доброго времени суток, коллеги.
Похожей темы, увы, не нашёл. Давно я не возился с Excell. Но обстоятельства заставляют. Ситуация и задача в следующем: Существует Файл. Выгрузка из ERP системы. На одном листе у нас имеется список договоров. Есть уникальное поле Document_number. Есть второй лист. Старшие программеры писавшие скрипт выгрузки, не смогли сделать так, что бы все это дело выгружалось сразу в нужном виде. Так вот, на втором листе, есть список оплат. То есть дата, сумма и номер документа. Ключевое поле тоже Contract_Number. Он равен полю Document_number. Теперь. Необходимо, в первый лист, вставить значения из второго листа, так, что бы проплаты соответствовали своим документам. Допустим, в документе Sample0001 есть сумма 600 у.е. она состоит из двух проплат. 21.01.2008 | 300 11.02.2008 | 300 Нужно эти две строки из второго листа расположить под строкой в первом листе, в виде иерархии, или если проплата одна, просто сумму из строки второго листа поместить в строку первого листа... В общем. Насколько реально это сделать в самом Excel? Или намного проще прибегнуть к Delphi OLE Objects? Там тоже пока незнаю точный способ реализации. Какие методы и т.д. |
12.08.2008, 23:20 | #2 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
Все, что вышло - см. во вложении.
Я ушел немного от задания. Без ВБА дополнительных строк не вставить..., увы, поэтому оплаты перечислены в той же строке, что и данные по договору. С учетом наличия кнопки "+" (показать/скрыть группу) доступность к просмотру данных договора и оплат - элементарна. Успехов!
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
12.08.2008, 23:46 | #3 |
Форумчанин
Регистрация: 06.03.2008
Сообщений: 352
|
А может быть, сводная?
Зачем тащить данные на первый лист, если можно построить табличку оплат на отдельном? Сделать-то на VBA просто, особенно если добавить сортировку листа Оплаты по дате, - но зачем?
Слыхал я, что можно строить сводную по диапазонам с разных листов, но сам не умею. Пришлось тащить данные с одного листа на другой (залиты светло-бирюзовым). Я, правда, не понял, зачем нужен лист Договора, если все требуемые топикстартером данные - на листе Оплаты. На всякий случай взял наугад с Договора колонку Бла1. Точно так же можно включить в сводную и всё, что угодно; в том числе, если вставлять не вверх, а влево, можно получить и то, что требует топикстартер: аналог листа Договора с добавленными оплатами. P.S. IgorGO, спасибо, я на халяву использовал набитую Вами табличку. Последний раз редактировалось дмидми; 13.08.2008 в 07:30. |
13.08.2008, 06:24 | #4 |
Грызун Гранита
Пользователь
Регистрация: 25.01.2008
Сообщений: 33
|
Большое спасибо за помощь! Оба варианта по своему интересны.
Сам бы я до этого долго шёл, а теперь осталось выбрать оптимальный и воспользоваться. Спасибо!) |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Структура данных и защита листа | Legame | Microsoft Office Excel | 47 | 25.06.2019 11:03 |
Хелп!!!Многие компоненты в т.ч. DelphiX не компилируются! | NNN | Компоненты Delphi | 4 | 29.04.2008 16:35 |
Передача данных(массива) через DLL. | acorables | Общие вопросы Delphi | 4 | 05.02.2007 13:16 |
совмещение 2-х языков программирования | fis | Общие вопросы Delphi | 5 | 30.01.2007 20:13 |