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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 12.08.2008, 16:10   #1
Jenya
Грызун Гранита
Пользователь
 
Аватар для Jenya
 
Регистрация: 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? Там тоже пока незнаю точный способ реализации. Какие методы и т.д.
Jenya вне форума
Старый 12.08.2008, 23:20   #2
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

Все, что вышло - см. во вложении.
Я ушел немного от задания. Без ВБА дополнительных строк не вставить..., увы, поэтому оплаты перечислены в той же строке, что и данные по договору.
С учетом наличия кнопки "+" (показать/скрыть группу) доступность к просмотру данных договора и оплат - элементарна.

Успехов!
Вложения
Тип файла: rar Договора-оплаты.rar (4.0 Кб, 25 просмотров)
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума
Старый 12.08.2008, 23:46   #3
дмидми
Форумчанин
 
Аватар для дмидми
 
Регистрация: 06.03.2008
Сообщений: 352
Подмигивание А может быть, сводная?

Зачем тащить данные на первый лист, если можно построить табличку оплат на отдельном? Сделать-то на VBA просто, особенно если добавить сортировку листа Оплаты по дате, - но зачем?

Слыхал я, что можно строить сводную по диапазонам с разных листов, но сам не умею. Пришлось тащить данные с одного листа на другой (залиты светло-бирюзовым).

Я, правда, не понял, зачем нужен лист Договора, если все требуемые топикстартером данные - на листе Оплаты. На всякий случай взял наугад с Договора колонку Бла1.

Точно так же можно включить в сводную и всё, что угодно; в том числе, если вставлять не вверх, а влево, можно получить и то, что требует топикстартер: аналог листа Договора с добавленными оплатами.


P.S. IgorGO, спасибо, я на халяву использовал набитую Вами табличку.
Вложения
Тип файла: rar Договора-оплаты.rar (5.8 Кб, 27 просмотров)
Тип файла: rar Договора-оплаты2.rar (5.6 Кб, 23 просмотров)

Последний раз редактировалось дмидми; 13.08.2008 в 07:30.
дмидми вне форума
Старый 13.08.2008, 06:24   #4
Jenya
Грызун Гранита
Пользователь
 
Аватар для Jenya
 
Регистрация: 25.01.2008
Сообщений: 33
По умолчанию

Большое спасибо за помощь! Оба варианта по своему интересны.
Сам бы я до этого долго шёл, а теперь осталось выбрать оптимальный и воспользоваться. Спасибо!)
Jenya вне форума
Закрытая тема


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Структура данных и защита листа 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