2

Я получаю XLS-файл в виде отчета базы данных. Файл имеет следующий формат:

   | Customer | Name | ... | Orders
 1 |     6    | ...  | ... | 1234
 2 |          |      |     | 4567
 3 |          |      |     | 8910
 4 |     3    | ...  | ... | 3210
 5 |          |      |     | 8765
 6 |     1    | ...  | ... | 1000
 7 |          |      |     | 1001

Мне нужно отсортировать эту вещь по столбцу, который "заполнен" только в первой строке "записи" (здесь: строки 1-3, 4+5, 6+7), например, "Клиент" в этом примере. Есть ли способ (не обращаясь к VBA) объединить строки, которые образуют "записи" при сортировке по ним. Я знаю, это злоупотребляет Excel, но у меня нет другого выбора здесь.

Ожидаемый результат после сортировки по "Заказчику" будет:

   | Customer | Name | ... | Orders
 1 |     1    | ...  | ... | 1000
 2 |          |      |     | 1001
 3 |     3    | ...  | ... | 3210
 4 |          |      |     | 8765
 5 |     6    | ...  | ... | 1234
 6 |          |      |     | 4567
 7 |          |      |     | 8910

2 ответа2

2

Вы можете создать дополнительный столбец, который заполняет пробел, и использовать его для целей сортировки - предполагая, что клиент находится в столбце A, а новый столбец - в столбце E, вы можете вставить в E2:

=IF(A2="",E1,A2)

и перетащите формулу вниз.

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

0

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

  • APP1 для Apple Computer
  • APP2 для ряда, подключенного к Apple Computer
  • APP3 для другого ряда, подключенного к компьютеру Apple, и т.д.
  • BOA1 для Банка Америки
  • BOA2 для строки, прикрепленной к Банку Америки

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .