Страницы: 1
RSS
Копирование отдельных ячеек из одного файла в другой.
 
Добрый день, уважаемые Гуру. Прошу Вас помочь в решении следующей задачи: существует файл-отчет который ежедневно заполняется (построчно) мастерами цеха, т.е. значение одной из первых ячеек это собственно дата. В таблице есть данные которые не важны при составлении ежедневной сводки, необходимо скопировать определенные ячейки из строки за прошедшие сутки в  другой файл в строку с той же датой. На мой неопытный взгляд вся эта процедура должна выглядеть примерно так:  
1. Нажимаем кнопку "Передать данные" на листе ежедневной сводки  
2. поиск строки в файле ежедневной сводки = прошедшая дата минус один  
3. создание строки с прошедшей датой после строки "прошедшая дата минус один" (именно после так как ниже есть строки с суммарными значениями)  
4. поиск необходимого файла-отчета по указанному пути  
5. поиск строки за прошедшие сутки (сводка формируется утром каждого дня)  
6. перенос необходимых значений из найденной строки файла-отчета в файл ежедневной сводки (столбцы обоих файлов неизменны, поэтому здесь можно жестко привязать столбец к столбцу)  
 
дальше файл со сводкой должен уйти руководству поэтому значения должны отображаться без привязки к файлу-источнику.  
 
вот примерно так, надеюсь объяснил доходчиво, если нет прошу не бить, а задавать любые вопросы. Не могу отправить файл с данными т.к. это производственные показатели (СБ не дремлет)  
 
С уважением и надеждой на помощь. Иван
 
{quote}{login=foker}{date=17.07.2012 11:10}{thema=Копирование отдельных ячеек из одного файла в другой.}{post}... прошу не бить, а задавать любые вопросы...{/post}{/quote}  
Бюджет проекта?.. Сроки согласования ТЗ и исполнения заказа?..
 
так ведь прошу не сделать все и выслать готовый файл, есть желание выполнить все своми ручками, поэтому обратился в форум а не в отдел конкурсных процедур
 
Есть желание - это уже отлично! Тогда от вас - файлы "есть" и "хочу", можно без производственных данных, а также лично ваши попытки решения поставленной задачи (пусть с косяками, не работают и т.п., главное что вы делаете сами) - поможем:)
 
Выкидываю файлы файл-отчет это то откуда берутся данные, сводка - куда передаются. К ним ничего еще не прикручивал пока пробую хотя бы передать одно значение в другое. Умышленно не указал какие ячейки куда передавать т.к. в процессе могут появиться изменения и хотелось бы самому понимать как изменить адрес ячейки для передачи
 
foker, самое трудное в Вашей задаче - понять какие ячейки брать и куда записывать. Все остальное решалось на форуме не один раз...  
Даю алгоритм, времени набирать код нет..  
При запуске макроса "Передать данные" назначаем переменной активный лист активной книги (отчет мастера).  
Определяем последнюю строку с данными и запоминаем ее номер.  
Затем макросом запускаем диалог выбора файла или жестко пишем какой файл и откуда открывать. Мне диалог больше нравится:)  
Потом определяем последнюю строку вносим в нее данные из листа отчет.  
Наводим красоту последняя строка - вставляем формулы на R1C1, считаем данные, убиваем формулы.  
В общем случае лист1.[a1].value = книга(отчет).лист().[c3].value можно использовать cells(i,j) где i номер строки, j - столбца.
 
сделал сравнение по столбцам вот что получилось. Даю раскладку из какого столбца в какой нужно перенести данные, строка будет меняться так как заполнение таблицы будет построчно ежесуточно. Данные переносятся из файла "отчет" в файл "сводка"  
1. H -> C  
2. L -> H  
3. Q -> F  
4. S -> J  
5. Z -> M  
6. AC -> N  
7. AO -> O  
8. AZ -> P  
9. BF -> AB  
10. BJ -> AJ  
11. BO -> AF  
12. CF -> AA  
13. CJ -> AI  
14 CN-> AE  
Может быть есть возможность решения задачи посредством обычных формул без применения VBA?
Страницы: 1
Читают тему
Наверх