|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу. Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста". Название темы слишком короткое или не отражает сути вашего вопроса. Тема исчерпала себя, помните, один вопрос - одна тема Прочитайте правила и заново правильно создайте тему. |
|
Опции темы | Поиск в этой теме |
02.07.2008, 21:04 | #1 |
Пользователь
Регистрация: 02.07.2008
Сообщений: 15
|
выборка нужных значений, вывод
приветствую! хороший знакомый просил помочь советом, а сам бьюсь уже который час. на этот раз выложу с исходниками, так будет проще.
имеем: в папке результат лежит файл суммы. в него и должны попадать конечные значения. присутствуют 5 файлов (в папке исходные данные). требуется: в каждом файле по балансовым счетам 423хх и 426хх столба "итого" посчитать сумму и вынести в ячейку D2 файла суммы.xls. то есть название файла в папке исходные данные соответствует месяцу в который нужно вносить конечную сумму. 1 - D2, 2 - E2, 3 - F2 и далее соответственно. не пойму, как реализовать скрипт, который будет проверять строку на наличие значени "423хх" а после искать ячейку пересекающуюся со столбом "итого" и суммировать данные значения, после чего заносить полученный результат в файл суммы Последний раз редактировалось AZaharov; 02.07.2008 в 23:39. |
02.07.2008, 23:31 | #2 |
Форумчанин
Регистрация: 26.11.2006
Сообщений: 584
|
"итого" стоит в 4 столбцах(D,G,J,M)
Из какого именно суммировать? Ниже пример для столбца M. =СУММПРОИЗВ(((ЛЕВСИМВ(A6:A1000;3)=4 23&"")+(ЛЕВСИМВ(A6:A1000;3)=426&"") )*(M6:M1000)) точнее для D2: =СУММПРОИЗВ(((ЛЕВСИМВ([1.xls]Лист1!$A$6:$A$1000;3)=423&"")+(ЛЕВС ИМВ([1.xls]Лист1!$A$6:$A$1000;3)=426&""))*([1.xls]Лист1!$M$6:$M$1000)) Последний раз редактировалось ZORRO2005; 03.07.2008 в 00:09. |
03.07.2008, 00:14 | #3 |
Пользователь
Регистрация: 02.07.2008
Сообщений: 15
|
ага, теперь верно. а возможно написать макрос который выполняет следущее действие: создаем мы папку, название которой соответствует ячейке B1, B2, B3... Bx из файла "суммы" и вносит суммы в нашем случае на 5 месяцев? получилась бы почти полная автоматизация
Последний раз редактировалось AZaharov; 03.07.2008 в 00:19. |
03.07.2008, 00:20 | #4 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
в 01-2008 лежат условные данные за месяц (за январь) - открываем его первым.
в СуммаМ - ведется подсчет по счетам/по месяцам - открываем его вторым. В файле записаны только две формулы для 1-го месяца для счетов начинающихся на 5 и на 7. Собственно это не две формулы, формула одна, просто она универсальная, ее можно копировать в любую ячейку, с первой строки в своей колонке она возьмет месяц (имя файла где лежат данные) из второй колонки в своей строке она возьмет итоги по каким счетам суммируются. Понятно, файлы с данными за каждый месяц должны быть открыты. Файлы можно называть произвольно, только точно также необходимо написать их имя в первой строке файла СуммаМ. в первой ячеке второй колонки в (В1) лежит число 100, это число должно быть не меньше, чем максимальное количество строк в файлах с данными за месяц. Успехов!
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
03.07.2008, 00:38 | #5 |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
Пока я писал ответ - поменялись условия задачи)))
Кстати, на написание формулы, времени ушло в 10 раз меньше, чем на оформление (подготовку) файла с данными и формы для сбора результатов. Исправлено, согласно нововведениям
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
03.07.2008, 00:58 | #6 |
Пользователь
Регистрация: 02.07.2008
Сообщений: 15
|
ZORRO2005, ваш способ полностью рабоспособен, весьма благодарен!
IgorGO, вы как всегда оригинальны. успел заметить, пока курил форум. собстенно за основу возьму вариант зорро. мне кажется его проще довести до кондиции так сказать. по крайней мере сроки не жмут, поэтому пока поэксперементирую с ним. хотя бегло посмотрев то что прислал Игорь, понял, мои познания экселя не велеки -( сейчас возник следующий вопрос. номер счета и итог не всегда идет в столбе А и М соответственно. редактирование формулы помогло, но возможен вариант и с другим расположением счетов и итога. это нужно продумать заоодно опишу подробнее то что хотел описать выше, но видно мысль моя размыта. ну так вот, возможен ли такой макрос, выполняющий следующее действо: из ячейки B1, B2 ... Bx файла "суммы.xls" он берет текстовую переменную, в данном случае имя банка (например банк "Авангард"). далее в папке "икс" он ищет подпапку, имя которой = текстовому параметру ячейки B1 (Авангард), B2 ... Bx и заполняет ячейки D2, E2, F2, G2, H2 просчитанными суммами по уже готовой формуле. грубо говоря умеет ли эксель работать свнешними данными такими как массив файлов? |
03.07.2008, 01:13 | #7 | |
Новичок
СтарожилДжуниор
Регистрация: 05.02.2008
Сообщений: 9,487
|
Цитата:
Тема "складываем необходимые файлы в папку и перебираем их все по очереди с целью выудить нужную информацию" довольно популярна здесь. Как у алмаза, у нее открываются все новые и новые грани. Лично меня этот процесс завораживает
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
|
|
03.07.2008, 01:23 | #8 |
Пользователь
Регистрация: 02.07.2008
Сообщений: 15
|
(= по рассказам все того же знакомого процесс, коим он занимается в данный момент очень рутинный и уж ни сколько не сложный. видимо потому-то он и озаботился поисками способов его решения\сведения к минимуму однообразных операций. ну эт что-то уже не по теме
проще говоря, буду признателен за предоставленный в качестве шаблона пример\подскаку в каку сторону копать дальше. ежели требуется доп. информация, прошу, оглашайте |
03.07.2008, 01:34 | #9 |
Форумчанин
Регистрация: 26.11.2006
Сообщений: 584
|
Я бы использовал сводные таблицы.
|
03.07.2008, 13:13 | #10 | |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
Если интересует решение Вашей задачи с помощью VBA, тогда посмотрите вложение. Все исходные файлы и файл "суммы.xls" должны находиться в одной папке. Лишних файлов с расширением .xls быть не должно. Откройте файл "суммы.xls" и нажмите кнопку "Выполнить".
P.S. По поводу Цитата:
Задали, например, папку "Икс", в ней нашли подпапку с именем, соответствующим значению ячейки "B2" и ... А в какой файл этой подпапки записывать полученные данные?
Чем шире угол зрения, тем он тупее.
Последний раз редактировалось SAS888; 03.07.2008 в 13:45. Причина: Добавлено |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
удаление не нужных знаков после запятой. | Alar | Общие вопросы Delphi | 4 | 31.05.2012 19:59 |
выборка предыдущих значений(курсы валют)) | alehandro | Microsoft Office Access | 1 | 29.04.2008 23:57 |
Выборка уникальных значений | Mary_star | SQL, базы данных | 9 | 11.02.2008 22:46 |
Выборка значений ячеек DBGrid | Македонский | БД в Delphi | 3 | 05.12.2007 07:10 |
графический вывод значений массива | vitalik007 | Помощь студентам | 6 | 21.10.2007 20:34 |