|
|
|||||||||||||||||||||||||||||
|
Как сравнить два файла MS ExcelИсточник: msoffice-prowork msoffice-prowork
Иногда возникает необходимость сравнить два файла MS Excel. Это может быть нахождение расхождения цен на определенные позиции или изменение каких-либо показаний, не суть важно, главное, что необходимо найти определенные расхождения. Не лишним будет упомянуть, что, если в файле MS Excel находится пара-тройка записей, тогда прибегать к автоматизации нет смысла. Если же файл насчитывает несколько сотен, а то и тысяч записей, то без помощи вычислительной мощности компьютера не обойтись. Смоделируем ситуацию, когда два файла имеют одинаковое количество строк, а расхождение необходимо искать в определенном столбце либо в нескольких столбцах. Такая ситуация возможна, например, если необходимо сравнить цену на товары по двум прейскурантам, либо сравнить замеры спортсменов до и после тренировочного сезона, правда для такой автоматизации их должно быть очень много. В качестве рабочего примера возьмем файл с показателями вымышленных участников: бег на 100 метров, бег на 3000 метров и подтягивания. Первый файл - это замер в начале сезона, а второй - конец сезона. Первый способ решения поставленной задачи. Решение только силами формул MS Excel.Поскольку записи выстроены вертикально (наиболее логичное построение) то необходимо воспользоваться функцией ВПР. В случае использования горизонтального размещения записей придется воспользоваться функцией ГПР. Для сравнения показателей бега на 100 метров формула выглядит следующим образом: =ЕСЛИ(ВПР($B2;Sheet2!$B$2:$F$13;3;ИСТИНА)<>D2;D2-ВПР($B2;Sheet2!$B$2:$F$13;3;ИСТИНА);"Разницы нет") В случае, если разницы нет, выводится сообщение, что разницы нет, если она присутствует, тогда от значения в конце сезона отнимается показатель начала сезона. Формула для бега на 3000 метров выглядит следующим образом: =ЕСЛИ(ВПР($B2;Sheet2!$B$2:$F$13;4;ИСТИНА)<>E2;"Разница есть";"Разницы нет") Если конечное и начальное значения не равны выводится соответствующее сообщение. Формула для подтягиваний может быть аналогична любой из предыдущих, дополнительно приводить ее смысла нет. Конечный файл с найденными расхождениями приведен ниже. Небольшое пояснение. Для удобства читаемости формул данные из двух файлов были перемещены в один (на разные листы), но этого можно было не делать. Видео сравнения двух файлов MS Excel с помощью функций ВПР и ЕСЛИ.Второй способ решения задачи. Решение с помощью MS Access.Поставленную задачу можно решить, если предварительно импортировать файлы MS Excel в Access. Что касается самого способа импорта внешних данных, то для нахождения различающихся полей разницы нет (любой из представленных вариантов подойдет). Последний представляет собой связь файлов Excel и Access, поэтому при изменении данных в файлах Excel, расхождения будут находится автоматически при выполнении запроса в MS Access. Следующим шагом после произведения импорта будет создание связей между таблицами. В качестве связующего поля выбираем уникальное поле "№ п/п". В первом столбце указываем, какие записи необходимо вывести, а во втором - при каких условиях записи будут выведены. Естественно, для второго и третьего поля действия будут аналогичными. Видео сравнения файлов MS в Excel, с помощью MS Access.В результате проделанных манипуляций выведены все записи, с разными данными в поле: "Бег на 100 метров". Файл MS Access представлен ниже (к сожалению, внедрить, как файл Excel, SkyDrive не позволяет) Вот такие два способа существуют для нахождение расхождений в таблицах MS Excel. У каждого есть как преимущества, так и недостатки. Понятно, что это не исчерпывающий список сравнения двух файлов Excel. Ваши предложения ждем в комментариях. Ссылки по теме
|
|