Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

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

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


Донат для форума - использовать для поднятия настроения себе и модераторам

А ещё здесь можно купить рекламу за 15 тыс руб в месяц! ) пишите сюда - alarforum@yandex.ru

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Название темы включает слова - "Помогите", "Спасите", "Срочно"
Название темы не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте >>>правила <<< и заново правильно создайте тему.
 
Опции темы
Старый 18.11.2008, 18:17   #1
SLP
 
Аватар для SLP
 
Регистрация: 17.11.2008
Адрес: Санкт-Петербург
Сообщений: 9
Репутация: 10

icq: 25371473
По умолчанию Слить-объединить несколько файлов в один

Подобные темы в форуме уже были, но мне, к сожалению, требуется готовое решение, т.к. самостоятельно реализовать не смог.

Имеется несколько таблиц в Excel (как обычно "выборка" из базы данных, которая многих отчётов не делает и не планирует делать) с информацией по статистике товара (приход-расход, цена, остаток) по различным годам (месяцам) деятельности предприятия.
Требуется объединить эти файлы, чтобы была полная информация за всё время.
- Количество строк в различных файлах колеблется от 10 тыс. до 15 тыс. (может быть и более 35 тыс.);
- Количество позиций изменялось в течении различных месяцев и лет;
- Во всех файлах имеются несколько столбцов абсолютно идентифицирующих единицу товара (их количество пять), "идентификатор" товара состоит минимум из двух ячеек (Модель-Номер) - это сочетание уникально, но присутствует в каждом файле;

Нужно объединить файлы основываясь на этом "идентификаторе", где в результате на каждую позицию будет занесена информация в одну строку из всех файлов.

Прочитал - сложно написал.

В приложении файл, где последний лист - это строка того что хотелось бы получить, а предыдущие листы - выжимка из файлов с близко лежащими позициями.
Хотелось бы получить уже "маску", использование которой с файлами подобной структуры можно было бы осуществлять "слитие" по желанию пользователя.
Понимаю, что задача потребует времени и загрузки мозга специалиста, поэтому должна быть оценена и компенсирована.

Прошу помочь, это сэкономит мне кучу времени на "объединение".
Вложения
Тип файла: rar Запчасти_2006-2008.rar (20.2 Кб, 55 просмотров)
SLP вне форума  
Старый 19.11.2008, 08:47   #2
SAS888
Профессионал
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,162
Репутация: 1127
По умолчанию

Посмотрите вложение. Запустите макрос "Main".
1. С Вашего позволения, в исходном файле на листе "2008" в столбце "F" заголовок "Производитель" заменен на "Остаток на начало 2008г." (числа в столбце проставлены произвольно), т.е. по аналогии с другими листами.
2. Итоговый лист перемещен в начало. Это позволяет в дальнейшем добавлять произвольное количество листов для обработки. Следите за тем, чтобы структура этих листов была одинакова (назначение столбцов). Количество месяцев на каждом листе - произвольное, так же как и количество строк.
3. Не понял, что делать с данными столбца "A". Идентификация записей в таблице осуществляется по столбцам "Модель" и "Номер". В Вашем примере встречаются наименования с идентичными параметрами, но с разнами значениями в столбце "A". Сейчас делается так: если текущее наименование не идентифицировано, то в столбец "A" заносится его значение, а если это наименование уже есть в списке, то значение в столбце остается неизменным. А как нужно?
4. Что нужно изменить (добавить, убрать и т.д.) - пишите.
Вложения
Тип файла: rar Запчасти_2006-2008_2.rar (24.6 Кб, 107 просмотров)
SAS888 вне форума  
Старый 19.11.2008, 19:13   #3
SLP
 
Аватар для SLP
 
Регистрация: 17.11.2008
Адрес: Санкт-Петербург
Сообщений: 9
Репутация: 10

icq: 25371473
По умолчанию Всё выглядит как и хотелось бы

- Столбец "А" - это порядковый номер записи в конкретном файле, поэтому значение в разных файлах и отличается,
никакой смысловой нагрузки не несёт, т.е. он неважен для сводной таблицы;
- Наличие другого столбца (Производитель) в одном файле - к сожалению это изменение произведённое в "выжимке" из базы данных в 2008г.,
и Вы абсолютно правильно поняли присвоив произвольное значение и переименовав столбец;
- Возник вопрос по не соответствующему столбцу "Производитель".
Можно ли его включить в сводную таблицу, сохранив добавление столбца "Остаток на начало 2008г." с произвольными данными
(его можно просто вставить в файл 2008г. после "Производитель" ещё до обработки), расположение в таблице не важно, но лучше в начальных столбцах.
Информация столбца "Производитель" имеется только в файле 2008г.

Спасибо, Вам.
Жду Вашего решения.
SLP вне форума  
Закрытая тема

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как объединить несколько ячеек katlis Microsoft Office Excel 9 12.01.2009 23:29
Как объединить два массива в один. TheWanderer Общие вопросы C/C++ 2 10.11.2008 01:15
два запроса, которые нужно объединить в один. andrianov123 БД в Delphi 4 16.05.2008 16:06
Объединить в один файл asale Microsoft Office Excel 2 12.02.2008 14:18
Как объединить несколько ячеек katlis Microsoft Office Excel 1 02.08.2007 23:31


13:23.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.

Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru