Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Работа с MS Office > Аналог sumif в MS excel, но с текстом на исходе


Автор: Bacardi_uk 13.11.2007, 16:37
Добрый день. Пытаюсь отсортировать названия продуктов по их штрихкодам. То есть имеется список оригинальных штрихкодов с правильными нахваниями и мой список моих названий с теми же штрихкодами. Пытаюсь сравнить названия, используя sumif функцию, но на исходе получаю 0. Предполагаю, что в формуле sumif на исходе должно стоять число. Но нет ли такой формулы, на исходе который был бы просто текст? 

Автор: kapbepucm 13.11.2007, 16:56
А что конкретно на исходе ты хочешь видеть?

Автор: Bacardi_uk 13.11.2007, 17:16
На исходе я хочу видеть название позиции соответствующее штрихкоду из моего списка

Автор: kapbepucm 13.11.2007, 17:40
DGET

Автор: Bacardi_uk 14.11.2007, 10:19
спасибо за ответ, но что-то не получается...выкладываю свою таблицу.
На странице All имеются абсолютно все заводские штрихкоды. В таблице Kentaurs имеется наш сортимент с теми же штрихкодами, но с другими названиями. Мне надо сделать так, чтобы на странице All рядом с заводским названием стояло бы мое название соответствующее этому коду

Автор: kapbepucm 14.11.2007, 10:35
Реализацию желаешь именно формулами?

Автор: Genyaa 14.11.2007, 10:42
Впишите в на листе All в ячейку С2 такую формулу:

Код

=ЕСЛИ(ЕОШИБКА(ПОИСКПОЗ(All!B2;Kentaurs!B:B;ЛОЖЬ()));"";ИНДЕКС(Kentaurs!A:A;ПОИСКПОЗ(All!B2;Kentaurs!B:B;ЛОЖЬ())))


И разможьте ее на всю таблицу в столбце С. Для этого достаточно сделать так:
- перейдите курсором в А1
- нажмите Ctrl+Down (стрелка вниз)
- два раза Табуляция - курсор будет в конце таблицы в столбце С
- нажмите Shift и не отпуская его Up (стрелка вверх) - выделится вся область столбца С на длину всей таблицы, включая ячейку с введенной формулой
- нажмите Ctrl+D
- изучайте результат.

Автор: Bacardi_uk 14.11.2007, 11:27
Цитата(Genyaa @ 14.11.2007,  10:42)
Впишите в на листе All в ячейку С2 такую формулу:

Код

=ЕСЛИ(ЕОШИБКА(ПОИСКПОЗ(All!B2;Kentaurs!B:B;ЛОЖЬ()));"";ИНДЕКС(Kentaurs!A:A;ПОИСКПОЗ(All!B2;Kentaurs!B:B;ЛОЖЬ())))


И разможьте ее на всю таблицу в столбце С. Для этого достаточно сделать так:
- перейдите курсором в А1
- нажмите Ctrl+Down (стрелка вниз)
- два раза Табуляция - курсор будет в конце таблицы в столбце С
- нажмите Shift и не отпуская его Up (стрелка вверх) - выделится вся область столбца С на длину всей таблицы, включая ячейку с введенной формулой
- нажмите Ctrl+D
- изучайте результат.

А ты можешь написать эту формулу на английском, так как мой excel не принимает русские функции. спасибо

PS. Может можешь выложить уже готовый файл с формулой?

Автор: kapbepucm 14.11.2007, 11:41
Код
=IF(ISERROR(MATCH(All!B2;Kentaurs!B:B;FALSE()));"";INDEX(Kentaurs!A:A;MATCH(All!B2;Kentaurs!B:B;FALSE())))
Табличка в "Kentaurs" на очень знакомом языке ((:

Автор: Bacardi_uk 14.11.2007, 12:02
Цитата(kapbepucm @ 14.11.2007,  11:41)
Код
=IF(ISERROR(MATCH(All!B2;Kentaurs!B:B;FALSE()));"";INDEX(Kentaurs!A:A;MATCH(All!B2;Kentaurs!B:B;FALSE())))
Табличка в "Kentaurs" на очень знакомом языке ((:

Спасибо земляк! Всё заработало!
Тему можно закрывать

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)