Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

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

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

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.07.2013, 12:32   #1
Serg83
 
Регистрация: 12.07.2013
Сообщений: 6
По умолчанию Сравнить значение в 2-х книгах

Добрый день.

Имеем 2 огромных файла с номенклатурой и их количеством.

Подскажите, пожалуйста, как формулами экселя (без макросов) сделать следующее:

1) сравнить каждое значение в столбце А в Книге1 со значенияи столбцом А в Книге2 и подставить значение соответствующее значение из столбца С Книги2
Или по другому - сравнить название номенклатуры в 2-х книгах и у совпадающих названий подставить количество товара из 2-й книги.

2) сравнить название номенклатуры в столбцах 2-х книг и выделить те, по которым не найдется совпадений

Заранее премного благодарен


--------- примечание модератора - вдруг кому пригодится --------------
Цитата:
Надстройка LOOKUP предназначена для сравнения и подстановки значений в таблицах Excel.

Если вам надо сравнить 2 таблицы (по одному столбцу, или по нескольким),
и для совпадающих строк скопировать значения выбранных столбцов из одной таблицы в другую,
надстройка «Lookup» поможет сделать это нажатием одной кнопки.


В настройках программы можно задать:
  • где искать сравниваемые файлы (использовать уже открытый файл, загружать файл по заданному пути, или же выводить диалоговое окно выбора файла)
  • с каких листов брать данные (варианты: активный лист, лист с заданным номером или названием)
  • какие столбцы сравнивать (можно задать несколько столбцов)
  • значения каких столбцов надо копировать в найденные строки (также можно указать несколько столбцов)

Скачать надстройку для сравнения таблиц Excel и копирования данных из одинаковых строк


Последний раз редактировалось EducatedFool; 30.09.2013 в 09:55.
Serg83 вне форума Ответить с цитированием
Старый 12.07.2013, 13:05   #2
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

короткий ответ ВПР(...)
пожалуйста
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 12.07.2013, 16:28   #3
Serg83
 
Регистрация: 12.07.2013
Сообщений: 6
По умолчанию

Цитата:
Сообщение от IgorGO Посмотреть сообщение
короткий ответ ВПР(...)
пожалуйста
спасибо за совет.

у меня получается следующая формула:
=ВПР(RC[-4];'[Файл.xls]TDSheet'!R5C2:R77C2;'[Файл.xls]TDSheet'!C5;0)

но в результате выдаются значения либо "Н/Д" - если значение не найдено и так оно и должно быть.
а если найдено выводится - #ЗНАЧ!, вместо соответствующего значения в ячейке С5...
Serg83 вне форума Ответить с цитированием
Старый 12.07.2013, 16:50   #4
DiemonStar
Старожил
 
Регистрация: 08.02.2012
Сообщений: 2,173
По умолчанию

Цитата:
а если найдено выводится - #ЗНАЧ!, вместо соответствующего значения в ячейке С5...
Т.е. Вам нужно выдавать значение из одной ячейки в случае нахождения значения в массиве?
Правильно поставленная задача - три четверти решения.
DiemonStar вне форума Ответить с цитированием
Старый 12.07.2013, 17:09   #5
Serg83
 
Регистрация: 12.07.2013
Сообщений: 6
По умолчанию

Цитата:
Сообщение от DiemonStar Посмотреть сообщение
Т.е. Вам нужно выдавать значение из одной ячейки в случае нахождения значения в массиве?
нет. нужно передавать соответвие найденному значению из соседного столбца.

Например: в таблице "А" есть "Товар 1". нужно найти "Товар 1" во второй таблице и подставить из 2-й в 1-ю таблицу его количество.
Serg83 вне форума Ответить с цитированием
Старый 12.07.2013, 17:10   #6
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

И что такое '[Файл.xls]TDSheet'!C5?
Вот никогда так не пытался номер столбца указывать... Даже не знаю - так можно или нет? А проверить не не чем...

Вообще там возможно только одно значение - 1, любое другое даст ошибку. Так что из соседнего никак не получится...
webmoney: E265281470651 Z422237915069 R418926282008

Последний раз редактировалось Hugo121; 12.07.2013 в 17:30.
Hugo121 вне форума Ответить с цитированием
Старый 12.07.2013, 17:41   #7
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

а так:
Код:
=ВПР(RC[-4];'[Файл.xls]TDSheet'!R5C2:R77C5;4;0)
Игорь,
это '[Файл.xls]TDSheet'!C5 адрес 5-го столбца (Е) в стиле ссылок R1C1. только он там ни к чему, там надо порядковый номер столбца таблицы из которого собственно и будет возвращено значение.
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете

Последний раз редактировалось IgorGO; 12.07.2013 в 17:44.
IgorGO вне форума Ответить с цитированием
Старый 12.07.2013, 17:48   #8
Serg83
 
Регистрация: 12.07.2013
Сообщений: 6
По умолчанию

Цитата:
Сообщение от Hugo121 Посмотреть сообщение
И что такое '[Файл.xls]TDSheet'!C5?
Вот никогда так не пытался номер столбца указывать... Даже не знаю - так можно или нет? А проверить не не чем...

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

нашел в настройках как изменить значение ссылок на ячейки с R1C1 на более привычные A1 и тд. теперь отображение формул по старому, но смысл не поменялся....

В итоге получилось через ВПР только найти расхождения между ассортиментом товаров в 2-х файлах. они вывелись как Н/Д.

а перенести кол-во так и не получилось
Serg83 вне форума Ответить с цитированием
Старый 12.07.2013, 18:01   #9
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Ещё раз вдумчиво прочтите всё что найдёте про ВПР() - ну хоть хелп например...
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 12.07.2013, 18:16   #10
Serg83
 
Регистрация: 12.07.2013
Сообщений: 6
По умолчанию

Цитата:
Сообщение от Hugo121 Посмотреть сообщение
Ещё раз вдумчиво прочтите всё что найдёте про ВПР() - ну хоть хелп например...
Help читал... не помогло...
также пробовал размещать 2 таблицы на одном листе.
но итог тот же... либо начинает возвращать то значение по которому идет сравнение вместо его количества. но то же самое было и при сравнении 2-х файлов.

p.s. может быть подскажете какой функцией решить исходную проблему, вместо отправки в Help?
Serg83 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поиск значения в книгах Chuikov Microsoft Office Excel 12 03.07.2013 14:32
Сравнить значение в DBEdit со значениями в столбце БД Mimozi БД в Delphi 1 08.12.2012 16:51
сравнить значение из массива и выбрать значение konrad Microsoft Office Excel 4 15.03.2011 20:40
Сравнить значение из lisbox -=Virus=- Общие вопросы Delphi 2 28.09.2010 21:17
О книгах Halifath Помощь студентам 3 11.02.2010 08:00