Нет практического способа сделать это за 1 шаг с формулой в точности так, как вы хотите.
Вы МОЖЕТЕ сделать это, но это было бы настолько запутанным INDEX
/ ROW
материалом, что это не читается.
Вы можете разделить его на несколько этапов или сделать преобразования после Excel? В зависимости от вашего контекста, разные
решения будут более практичными, чем другие.
Предполагается, что ваш лист похож на:
A B
--- ---
A Q
B E
C B
D W
E A
Я могу сделать это в 3 добавленных столбцах:
- Поиск подходящих значений и пропускаемых строк по формуле (введите
C2
) ="0"&IFERROR(VLOOKUP(A2,$B:$B,1,FALSE),"")
.
- Найти несоответствия по формуле (введите
D2
) =IF(ISNA(VLOOKUP(B2,$A:$A,1,FALSE)),"1"&B2,"")
- Объедините их вместе, столбец
C
перед столбцом D
, с формулой в E2
: =IF(ROW(E2)<=COUNTA(C:C),C2,INDEX(D:D,ROW(E2)-COUNTA(C:C)+1))
. Обратите внимание, что +1 - потому что я предполагаю, что есть заголовок столбца.
В результате:
A B C D E
--- --- --- --- ---
A Q 0A 1Q 0A
B E 0B 0B
C B 0 0
D W 0 1W 0
E A 0E 0E
1Q
1W
Теперь вы можете скопировать / вставить текстовый столбец E куда-нибудь, отсортировать его и удалить 1-й символ. Добавление 0
и 1
позволяет сортировать столбец E таким образом. Если вы этого не сделаете
сделав это таким образом, вы не сможете различить «удаление пробелов» и желательные пустые строки.
Это много шагов, чтобы сделать это; Вы можете написать макрос для этого, если вам нужно больше автоматизировать это.