0

У меня есть таблица клиентов, к которой моя компания отправляет продукты. Проблема заключается в том, что эти клиенты должны сортироваться по их кодам областей, чтобы продукты могли быть отправлены в соответствующие судоходные компании (у нас есть две компании-партнеры, которые поставляются в определенные районы страны). Каждая компания отправила нам список номеров кодов областей, на которые они могут отправиться, и мне нужно разделить лист Excel на два листа, каждый из которых содержит клиентов с региональными кодами, совместимыми с соответствующей компанией.Группировка строк по кодам областей

Я попытался решить эту проблему с помощью функции VLOOKUP, но она работает только на основе отдельной строки, и мне нужно решение, которое найдет все строки, содержащие число из указанной группы кодов областей.

Другим способом может быть функция IF, которая помещает значение True или False (одно значение IF для каждой компании) в новый столбец, а затем я мог бы сортировать по этому значению и копировать данные на новый лист. Такой подход будет работать, но функция ПЧ будет чрезвычайно долгой и трудной в управлении.

Можете ли вы предложить способ решить эту проблему?

Изменить, чтобы включить данные, указанные с помощью комментариев:

В настоящее время у меня есть около 5000 строк, но в будущем это может быть больше, хотя я сомневаюсь, что более 10 000 строк.

+1

'Index Match '? 'Pivot Table'? Фильтрация таблицы? Немного пользовательского VBA? Вы пробовали что-нибудь из этого? Без представления данных трудно понять, какая у вас большая проблема. –

+0

Ну, данные не должны быть важными, они содержат личные данные клиента, а среди этих данных - один столбец, содержащий номер кода области. Мне нужно найти все строки, в которых значение столбца кода области существует в определенном диапазоне – NDraskovic

+0

Если у вас есть 50 строк данных или тысяча или миллион, это имеет значение для решения. –

ответ

1

ВПР представляется весьма перспективным, подобного =VLOOKUP($B2,F:G,1,0) в C2 скопированной поперек и вниз по мере необходимости, с компоновкой, как показано ниже:

SO16731095 example

Это не группа, как вы говорите, что требуется (но делать вам действительно нужно?), потому что кажется, что некоторые места будут обслуживаться обеими грузоотправителями. Вы можете решить эту проблему, пометив те строки, в которых они являются жизнеспособными, а затем путем сортировки разбивать на три группы (только Shipper1, только Shipper2, оба) до передачи диапазонов по желанию.

Редактировать в ответ на ФОС не комментарий

Если вы можете быть уверены, есть не перекрывается между грузоотправителями, один столбец с этой формулой, скажем, в E2 скопировано вниз, может быть предпочтительнее:

=IF(ISERROR(MATCH(B2,F:F,0)>0),"Shipper2","Shipper1") 

и не будет регулярно показывать #N/A. (Предполагается, что никакая область не находится за пределами диапазона как грузоотправителей.)

+0

Hm, можно проверить результат функции VLOOKUP, и если он возвращает значение, функция IF должна написать «Shipper1», и если он вернет # N/A, он должен написать «Shipper2». Возможно ли это, и как бы определить значение # N/A в функции IF? – NDraskovic

+0

Нет совпадений, потому что мы получили коды для одной компании, а другие - все остальное (что означает, что Shipper1 может отправлять только определенные коды областей, а Shipper2 может отправлять все, но мы используем его только для продуктов Shipper1 can ' т отправки). Спасибо за ваш ответ, я попытаюсь его реализовать и посмотрю, выполнит ли он работу – NDraskovic

+0

@NDraskovic. Я понимаю, что очень трудно написать хороший вопрос, когда вы не знаете его ответа, но надеюсь, что вы оцените, что иногда, казалось бы, несущественные детали могут быть очень важными. Попытка охватить несколько возможностей/неопределенностей в одном ответе делает больше работы для человека, отвечающего так, может быть достаточно, чтобы препятствовать им приложить усилия для вас, а не для кого-то другого. т.е. кто-то может получить хороший ответ, и вы пропустите! ;-) – pnuts

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

  • Нет связанных вопросов^_^