|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу. Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста". Название темы слишком короткое или не отражает сути вашего вопроса. Тема исчерпала себя, помните, один вопрос - одна тема Прочитайте правила и заново правильно создайте тему. |
|
Опции темы | Поиск в этой теме |
12.09.2013, 11:25 | #11 |
Пользователь
Регистрация: 11.09.2013
Сообщений: 15
|
Спасибо ещё раз ))
по сути,все поля,не только эти 9 всегда одни и те же во всех присылаемых файлах. Я могу собрать в один файл все файлы,в которых есть только одна услуга и в один все файлы,в которых есть остальные услуги. Т.е., получится всего 2 файла,но больших по объёму. А потом уже сверить их по адресам,суммировать начисления,долг и оплату, и отсутствующую услугу закинуть в основной большой файл
Если Вы всё понимаете, значит Вам не обо всём говорят
|
12.09.2013, 11:39 | #12 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,166
|
Я по этим девяти говорил/спрашивал о том, что они всегда в начале и на этих местах?
Т.е. можно это не проверять/искать и брать эти данные из этих позиций? Интересует правда только адрес, раз LS/SG/SNG не нужны. Ну и соответственно тогда собирать данные можно начинать с 10-го столбца, аналогично выгружать с 10-го. Если будет 2 файла - тогда нет необходимости в диалоге их выбора, не сложно открыть вручную. Но это уже детали, которые можно поменять позже, это не затрагивает основной алгоритм сборки данных.
webmoney: E265281470651 Z422237915069 R418926282008
|
12.09.2013, 11:49 | #13 |
Пользователь
Регистрация: 11.09.2013
Сообщений: 15
|
да,эти поля всегда на одном и том же месте
но иногда бывают пропущены квартиры в файлах,допустим, одна УК даёт все квартиры,независимо живут в них или нет, а вторая УК даёт без таких квартир
Если Вы всё понимаете, значит Вам не обо всём говорят
|
12.09.2013, 12:45 | #14 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,166
|
Предварительно так.
Но нужно сперва синхронизировать номер ROOM'а - если в одном списке 0, то и в другом нужен 0. Или портить код, навешивая проверки и преобразования... Ещё можно позже добавить индикацию строк, куда добавлены значения. Так же можно подумать, как добавить те квартиры, которых нет в сводном файле - сейчас такие молча игнорируются. Хотя в словаре данные есть. Код в стандартный модуль сборной книги (файл выложить не могу, это сами или попросите кого-нибудь), активируете книгу, из которой тянете данные, по Alt+F8 выполняете код sborka(): Код:
Кстати, если где-то есть информация, различающая файлы - можно подумать, как это запоминать, чтоб лишний раз случайно не суммировать. Хотя конечно это лишние тормоза... И лишняя работа.
webmoney: E265281470651 Z422237915069 R418926282008
|
12.09.2013, 13:28 | #15 |
Пользователь
Регистрация: 11.09.2013
Сообщений: 15
|
спасибо, как Вы быстро! )) но у меня не получилось, ошибка - не та книга активна, хотя пробовала в обоих файлах
Если Вы всё понимаете, значит Вам не обо всём говорят
|
12.09.2013, 13:29 | #16 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,166
|
Ещё раз:
"Код в стандартный модуль сборной книги, активируете книгу, из которой тянете данные, по Alt+F8 выполняете код sborka()" И не нужно код класть во все книги - только в одну сборную! А то сами запутаетесь, который выполнять, наделаете брака... Вообще в коде вместо "Не та книга активна!" нужно бы писать "Активируйте лист, из которого собираете данные!". Так будет правильнее и понятнее, т.к. возможен вариант, что хоть и будет активна нужная книга, но на ненужном листе - и ничего по факту не соберётся, или выпадет в ошибку. Можно в код добавить и проверку на такой случай, хотя на практике таких запусков не должно быть Код:
Можно вообще сперва всю первую строку проверить на наличие характерных полей(после проверки что файл не сводный) - но всё равно тут ответственность юзера. Запускать на нужном листе, и только один раз. P.S. Кстати я бы делал по такой схеме - есть отдельно сводный файл, и папка для свежих исходных файлов. Набралось сколько-то исходных - не важно сколько - открыли сводный, запустили код - он перебрал/открыл все файлы в папке (можно её выбирать в диалоге, но на практике незачем), импортировал всё что нашёл, файлы перенёс в другую папку "отработанных" файлов. Так будет просто, быстро и надёжно - повторно подтянется в том случае, если повторно закинете файлы. Но можно вести лог импортированных файлов и не допускать таких ситуаций, если имена файлов всегда разные. Это в случае если данные всегда на определённом листе (хотя можно перебрать все листы, пока не найдётся [a1].Value = "NUMBER"). Озадачьте своих ИТ - пусть дорабатывают...
webmoney: E265281470651 Z422237915069 R418926282008
Последний раз редактировалось Hugo121; 12.09.2013 в 14:20. |
12.09.2013, 17:51 | #17 |
Пользователь
Регистрация: 11.09.2013
Сообщений: 15
|
спасибо ))
ИТ-это я,остальные ещё хуже на самом деле хотела себе облегчить жизнь,но т.к.,не работала в VBA, то не имею представления,как это сделать. Придётся заняться самообразованием ))
Если Вы всё понимаете, значит Вам не обо всём говорят
|
12.09.2013, 17:54 | #18 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,166
|
Тогда тем более Вам нужно вникнуть и далее усовершенствовать процесс самой - будете чувствовать себя уверенной, что при изменении исходных данных сможете сразу подправить макрос.
Но Вы конечно спрашивайте что непонятно, не бросим
webmoney: E265281470651 Z422237915069 R418926282008
Последний раз редактировалось Hugo121; 12.09.2013 в 17:57. |
12.09.2013, 17:57 | #19 |
Пользователь
Регистрация: 11.09.2013
Сообщений: 15
|
спасибо в очередной раз буду пробовать
Если Вы всё понимаете, значит Вам не обо всём говорят
|
12.09.2013, 18:14 | #20 |
Старожил
Регистрация: 11.05.2010
Сообщений: 5,166
|
Ещё раз повторю - код рабочий, но сперва нужно обеспечить соответствие адресов в примере: там в одном room нет, в другом room №0.
Как там в рабочих файлах - Вам виднее. Как вариант - можно заменой по диапазону убрать все нули (ячейка целиком). Ну или нагружать код этой обработкой - собирать ключ с проверкой: если поле пустое, то ставим 0, иначе значение поля.
webmoney: E265281470651 Z422237915069 R418926282008
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Слияние тхт файлов | recycler | Visual C++ | 0 | 04.06.2012 19:57 |
Pascal слияние файлов | death65 | Помощь студентам | 3 | 12.12.2010 15:41 |
Слияние файлов | pasha26 | Microsoft Office Excel | 4 | 23.12.2009 08:15 |
Слияние двух файлов в один | hen | Общие вопросы C/C++ | 1 | 07.10.2009 22:59 |
Слияние двух текстовых файлов | nataly_ukr | Общие вопросы Delphi | 5 | 26.12.2007 16:45 |