Страницы: 1
RSS
Отметка во 2-ой книге, если в 1-ой книге есть, VBA
 
Уважаемые форумчане, помогите, пожалуйста.

У меня есть 2 файла. В первом и во втором файле находятся список товара. Мне необходимо сделать так, чтобы товар, который есть в файле 1.csv (поиск можно делать по штрихкоду - столбец 2),  отмечался в файле 2.xlsx (отмечать можно так, например в 9 (пустом) столбце ставить цифру 1), поиск также можно делать по штрихкоду (столбец 6). Файлы прилагаю. Если что-то не понятно объяснил, спрашивайте.

Заранее спасибо!
 
функция ВПР()
 
Так написал, но что-то не помогает.
Код
=ВПР(C[-4];'[файл 2.xlsx]TDSheet'!C1:C6;C[-4];ИСТИНА)
 
Доброе время суток
Так не в файле же csv отмечать, а так вы ссылаетесь на книгу в которой хотите делать пометки

Код
=ЕСЛИ(ЕОШИБКА(ВПР(F2;'D:\Path\[файл 1.csv]файл 1'!B$1:B$7;1;ЛОЖЬ));"";1) 
 
Сделал так.
Код
=ВПР(RC[-3];'файл 1.csv'!C2;2;)
 
Теперь если встречается значение, то пишется #ССЫЛКА, если нет #Н/Д.
А как сделать так, чтобы писалось значение 1 при удачном поиске
Изменено: blackdron - 08.08.2014 11:24:10
 
Теперь сделал так:
Код
=ВПР(RC[-3];'файл 1.csv'!C2;'файл 1.csv'!C6;1)
и в ячейку возвращает значение столбца 2 файла1.csv, а мне надо столбец 6 файла1.csv. Т.е. должен возвращать значение 1
 
blackdron, не знаю пригодится или нет http://www.planetaexcel.ru/forum/index.php?PAGE_NAME=message&FID=1&TID=59093&TITLE_SEO=59093-2-spiska_-raskrasit-dublikaty-tolko-v-odnom.&MID=494677#message494677
 
1. В csv всего 5 столбцов! Т.е. было в первом файле - откуда единицы взялись в последнем файле?
2. У меня он вообще экселем не разбивается по столбцам, т.е. ВПР() это плохое решение, ненадёжное.
3. У Вас будет только один csv?

Я бы делал макросом - открыл csv, запомнил в словаре номера, затем циклом по столбцу/данным в xlsx проставил единицки, сверяясь с словарём. Такое будет работать почти на всех машинах с Виндой.
Изменено: Hugo - 08.08.2014 11:59:59
 
Hugo,
1. Я думал, что он будет копировать эти единички во второй файл, но он их не копирует. Попробовал решение с сайта office.microsoft.com примера 3, но не получилось
2. В принципе, ВПР помогает, он просто возвращает значение, которое и искал (штрихкод), а мне нужно вернуть единичку, если нашел
3. Да, только один
 
legionercheg, попробовал Ваш способ, тоже не получилось  :(
 
В принципе сделал, но пришлось добавить еще пару формул
Код
=ЕЧИСЛО(RC[-1])
 
и
Код
=ЕСЛИ(RC[-1];1;0)
 

Итого получилось так. Пошел конечно через тяжелый путь, но самое главное сделано
Скрытый текст
 
Единичку можно создать через ЕСЛИ ЕОШИБКА ВПР, как-то так, но при каждом открытии файла он будет заново обращаться к этому csv - и если файл будет другой (новый), то эти единицы будут уже на других местах.
Если же делать макросом - то можно хоть 100 csv обработать и понаставлять единиц, которые останутся навсегда. Или пока нужны, по задаче.
 
Тема закрыта
Страницы: 1
Наверх