Страница: 1 |
Вопрос: Сравнение содержимого двух xls-файлов | Добавлено: 19.05.03 15:03 |
Автор вопроса: ![]() |
Люди добрые! Поможите кто чем может!!! Я думаю, этот вопрос будет многим интересен. Ежеденвно получаю по 30-40 прайсов от поставщиков. В экселе. Ежедневно приходится проверять их - цены могут менятся по два раза на дню. Может кто подскажет как можно при помощи VB проверять изменения? Позиции могут как добавлятся, так и исчезать. В названиях могут быть изменения вплоть до одной буквы. |
Ответы | Всего ответов: 11 |
Номер ответа: 1 Автор ответа: ![]() ![]() ![]() Вопросов: 1 Ответов: 184 |
Профиль | Цитата | #1 | Добавлено: 20.05.03 04:54 |
Тебе совет или готовый код нужен? |
Номер ответа: 2 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ICQ: 117144252 Вопросов: 1 Ответов: 5 |
Профиль | Цитата | #2 | Добавлено: 20.05.03 10:20 |
Устроит и тот и тот вариант |
Номер ответа: 3 Автор ответа: ![]() ![]() ![]() ICQ: 175571327 Вопросов: 15 Ответов: 207 |
Web-сайт: Профиль | Цитата | #3 | Добавлено: 20.05.03 18:22 |
Кроме просмотра и сравнения полей другого варианта я здесь не вижу. |
Номер ответа: 4 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ICQ: 117144252 Вопросов: 1 Ответов: 5 |
Профиль | Цитата | #4 | Добавлено: 20.05.03 18:32 |
простой перебор не проходит! Могут быть опечатки, у каждого из поставщиков свои наименования. Похоже для каждого из поставщиков надо делать таблицу подстановки? Или может есть другие варианты? |
Номер ответа: 5 Автор ответа: ![]() ![]() ![]() Вопросов: 1 Ответов: 184 |
Профиль | Цитата | #5 | Добавлено: 21.05.03 00:35 |
А какие-нибудь ГОСТ, ОСТ, ТУ - по ним нельзя ориентироваться |
Номер ответа: 6 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ICQ: 117144252 Вопросов: 1 Ответов: 5 |
Профиль | Цитата | #6 | Добавлено: 21.05.03 10:15 |
А здесь как в программе "Сам себе режисер"! Каждый как хочет так и ворочит! |
Номер ответа: 7 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ICQ: 117144252 Вопросов: 1 Ответов: 5 |
Профиль | Цитата | #7 | Добавлено: 21.05.03 10:17 |
А здесь как в программе "Сам себе режисер"! Каждый как хочет так и ворочит! |
Номер ответа: 8 Автор ответа: ![]() ![]() ![]() ICQ: 175571327 Вопросов: 15 Ответов: 207 |
Web-сайт: Профиль | Цитата | #8 | Добавлено: 21.05.03 12:43 |
Есть вариант подключить библиотку VB Script'a и использовать регулярные выражения, но и в этом случае 100% гарантии сам понимаешь никто не даст (я не дам даже и 10% |
Номер ответа: 9 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() Вопросов: 87 Ответов: 459 |
Профиль | Цитата | #9 | Добавлено: 22.05.03 20:45 |
Я вижу один вариант: Расценивать книгу Excel как обычный источник данных, работая с ним через MS ADODB. Для этого понадобятся Jet.IISAM-драйверы Экселя; они автоматом ставятся с Visual Studio, Office 2000, MS Jet.OLEDB.4.0, MDAC 2.1-2.5 и т.д. Подконнектившись к книге через ADODB.Connection, пишешь SQL-запрос на выборку: тут может понадобиться указание диапазона ячеек, в котором лежит таблица с полезной информацией о товарах. Хорошо, если от каждого поставщика все прайсы приходят в типизированном формате, - тогда каждому поставщику можно поставить в соответствие некий диапазон ячеек, и хранить эти соответствия в INI-шнике (к примеру). Ну а если в книгах используются "именованные диапазоны" - то это вообще лафа. Так вот, выбирая нужные тебе данные из листа, ты можешь использовать SQL-оператор LIKE, позволяющий производить "нечёткие" сравнения. Так можно найти "подозрительно похожие" товарные позиции. Если такой путь устраивает, то могу накидать на мыло и статей, и готовых проектов по работе с IISAM-ами... Я нечто похожее делал, только там мрачнее было: данные приходили в HTML-е, причём каждый раз разной структуры. Пришлось написАть "угадайку", которая парсила HTML и находила в нём полезные таблицы. Потом перегоняла это в Эксель. После серии перегонок решала задачи, похожие на твою (но не совсем - а то сразу бы код выслал).
|
Номер ответа: 10 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ICQ: 117144252 Вопросов: 1 Ответов: 5 |
Профиль | Цитата | #10 | Добавлено: 23.05.03 12:01 |
Я тоже так подумал. Стандартными средствами тут не обойтись. Буду благодарен за инфу! |
Номер ответа: 11 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() Вопросов: 87 Ответов: 459 |
Профиль | Цитата | #11 | Добавлено: 23.05.03 12:53 |
Выслал на мыло. |
Страница: 1 |
|