2016-03-01 3 views
0

У меня есть несколько листов Excel. Первый лист содержит данные для полной информации. Второй лист содержит данные для всех позиций заказа.Excel: проверьте подстроку и добавьте значение

Мне нужно пройти второй лист на основе информации в первом листе и суммировать итоговые суммы от позиций.

Например, вот первый лист:

enter image description here

А вот второй лист:

![enter image description here

мне нужно:

  1. Сравните поле «Клиент» на первом листе как с столбцами «Имя клиента», так и «Псевдоним клиента».
  2. Если «Имя клиента» или «Псевдоним клиента» во втором листе содержит текст в поле «Клиент» на первом листе, он будет сравнивать поля «Товар».
  3. Если поле «Item» из первого листа соответствует полю «Item» со второго листа, мы добавляем количество и доход и помещаем их в первый лист.

Конечный результат должен выглядеть примерно так:

enter image description here

Это очень упрощенный пример. Фактический рабочий лист содержит сотни записей на первом листе и тысячи позиций на втором листе. Пожалуйста, помогите мне, если вы знаете, как это сделать!

+0

Я должен уточнить: третье изображение не удаляло другие записи в таблице. Я просто не включил их в скриншот. – zaanwar

+0

Пожалуйста, напишите код VBA, который вы указали до сих пор, и включите свои попытки написать запрошенные задачи. Также, пожалуйста, укажите, где в коде программа останавливается/запускается в ошибки/или не ведет себя так, как ожидалось. Спасибо. – Ralph

+0

Также это можно сделать с помощью формул, если вы заинтересованы. –

ответ

0

Вот формула решения:

Поместите это в C2:

=SUMPRODUCT((((ISNUMBER(SEARCH($B2,Sheet2!$A$2:$A$100)))+(ISNUMBER(SEARCH($B2,Sheet2!$B$2:$B$100))))>0)*(Sheet2!$C$2:$C$100=$A2)*(Sheet2!D$2:D$100)) 

затем скопировать и вниз.

enter image description here

Я понимаю, что вы просили решение Vba, но это здесь, если вы хотите.

Смежные вопросы