Страница 2 из 2

Re: Помогите в создании макроса сравнения двух документов Excel

Добавлено: 12 июн 2014, 21:57
Aliver
Это снова я.
Прошу прошения, но Ваш макрос от 15 часов посмотрел и проверил невнимательно :(
При пристальной проверке оказалось, что количество подсвечивается правильно, а вот цена не смотря на то что она одинаковая, подсвечивается как разная. Лично у меня в данном столбце ни одного правильного результата не смотря на то что они там есть.
С последним примером еще не успел разобраться, а то что Вы в макросе сравниваете без пробелов я понял.
Тем не менее, огромнейшее спасибо за помощь, очень надеюсь что и дальше не бросите начинающего в его бедах.

Re: Помогите в создании макроса сравнения двух документов Excel

Добавлено: 12 июн 2014, 23:05
pashulka
Нифига ;) не цена, а как раз количество подсвечивается "неверно", ибо как выяснилось - лидирующие пробелы наличествуют и в этом столбце, так что замените :

Код: Выделить всё

iSource.Columns(5) = Application.Trim(iSource.Columns(5))
на следующий вариант и будет Вам щастье

Код: Выделить всё

iSource = Application.Trim(iSource)
iSource.Columns(17).Replace ".", ".", xlPart

Re: Помогите в создании макроса сравнения двух документов Excel

Добавлено: 12 июн 2014, 23:25
Aliver
О да!... Это бесспорно счастье :) !
Уже даже и не знаю какими еще словами можно выразить ВАМ благодарность...
Спасли от рутинного труда и бессонных дней и ночей... :)
Огромаднейшее Вам СПАСИБО и низкий Вам поклон.

Re: Помогите в создании макроса сравнения двух документов Excel

Добавлено: 12 июн 2014, 23:41
pashulka
"Всякое решение плодит новые проблемы" (Закон Мерфи)

Т.к. лишние пробелы мы удаляем текстовой функцией, то в случае с ценами, которые содержат дробную часть, нам не помешает ещё и преобразовать их в числа (см. предыдущий топик), иначе цена, например, у товара "Марка 0.50 стандартная клей", который, кстати, во второй ведомости присутствует аж два раза, будет раскрашена как не совпадающая :)

Re: Помогите в создании макроса сравнения двух документов Excel

Добавлено: 13 июн 2014, 00:29
Aliver
И вновь большое спасибо за подсказку, Вы уже лучше разбираетесь в моих документах чем я сам ...
Про преобразование формата и предыдущий топик, к сожалению не нашел, можно его название плиз... Спасибо.
По поводу тех строк, что не проверяются макросом и как частный случай с двумя строчками марок... Наверное это уже и не так существенно... большую часть работы.. рутинную... Ваш макрос выполняет на отлично... А частности и сложные ситуации все равно прерогатива человека... Это даже и лучше и правильнее и надежнее... Поэтому вариант поиска по укороченным названиям наверное даже пока и не актуален... хотя для себя конечно я постараюсь его все же понять и проанализировать его работу. Как знать может еще и понадобиться...
А в общем и целом рад бесценному опыту общения с Вами... пусть еще далеко не все понял.. но есть к чему стремиться... Еще раз СПАСИБО.
P.S. К сожалению имея толстенькую книжку по VBA не могу найти всех используемых Вами операторов и функций... Если не сложно не подскажите где про все это можно было бы прочитать...

Re: Помогите в создании макроса сравнения двух документов Excel

Добавлено: 13 июн 2014, 00:48
pashulka
Это банальная очепятка, ибо я имел ввиду не топик, а сообщение#12

Несмотря на Вашу явную антипатию :( к расширенному поиску (сообщение#10), всё же рекомендую протестировать его.

Всю информацию о используемых в макросе методах и функциях, можно получить в офисной справке. Для этого, в редакторе VBA, достаточно установить курсор мышки на нужном слове и нажать клавишу F1

Re: Помогите в создании макроса сравнения двух документов Excel

Добавлено: 18 июн 2014, 13:48
Aliver
Доброго времени суток.
Прощу прощения за долгое молчание. Это не апатия... Просто нужно было как то начать выполнять поставленную задачу, да и на выходных не было под рукой достаточно материала для тестирования.
Ваш вариант с подбором путем отброса последних символов я проверил. Там все очень здорово и этот вариант имеет безусловное право на жизнь. Спасибо еще раз. Только по приведенному Вами выше закону это как оказалось действительно не финал... ( Использование макросов выявило следующие не очень удобные моменты.
1. Когда в Ведомостях содержатся две совершенно одинаковые строчки с названием товаров, но разной ценой и как вариант количеством, макрос берет первое по порядку из первой и ищет совпадение с первой встречной во второй ведомости. Естественно он находит тоже наименование товара, а вот цена и количество могут быть как карта ляжет... может попасть, а может и промазать в зависимости от порядка данных строк в Ведомость2.
2. Вылавливать такие ошибки опять же приходиться ручным поиском... Опять же время, черт его побери... ).
После пристального изучения проблемки подумался вот какой вариантик: Что если на другом листе (новой книге) создать таблицу сравнения которая бы состояла из следующих столбцов:
1 Название товара, 2. Количество по Вед1, 3. Цена по Вед1, 4. Ко-во по Вед2, 5. Цена по Вед2.
И в данную таблицу помещать только ячейки с различающимися позициями. В дальнейшем эту сверочную таблицу можно отсортировать и легко найти: 1. Одинаковые строчки, 2. Похожие строчки, 3. Разные цены (количество), 4. Оперативно ее отредактировать, 5. Только ее распечатать и отдать на исправление баз.
Если не сложно предложите может предложите еще вариантик. Заранее огромное спасибо.