Как удалить все строки в столбце B, которые не содержат те же значения, что и в столбце A?
3 ответа
Вы могли бы установить столбец C с чем-то вроде: =IF(A1=B1;"OK";"KO")
затем установите автоматический фильтр, отфильтруйте столбец C на значение KO
и удалите все отфильтрованные строки ...
пример:
установить формулу:
Отфильтруйте, выберите и удалите:
!
Вы хотите формулу, подобную этой, и затем вы можете отсортировать строки на "Это в COL1?и удалите их. Извините, у меня нет автоматического способа удаления строк без написания макроса для него. И я еще не получил свой кофе ...
=IF(ISNA(VLOOKUP(A2,$B$2:$B$7,1,FALSE)),"NO","YES")
IF проверяет, находится ли значение в поиске. ISNA проверяет наличие «# N/A» (что означает, что он не был найден), и значение NO/YES возвращается в ячейку на основании того, является ли IF истинным (ISNA) или ложным (найденное значение).
Надеюсь, что это имеет смысл.
--EDIT: "$" (знаки доллара) в диапазоне делают диапазон липким. Он сохраняет одно и то же значение независимо от того, перемещаете ли вы его вниз в другие ячейки или нет. Это то, что вы хотели бы знать ...
В любом случае, без VBA лучшее, что вы можете сделать, - это определить, какие строки удалить, а затем удалить их вручную.
Если вы хотите удалить строки, в которых значение в B не существует в A, вы можете просто использовать счетчик:
В столбце Проверка просто добавьте эту формулу: =COUNTIF($A$2:$A$8,B2)
Фиксированный диапазон - это диапазон вашего столбца A, и вам нужно будет зафиксировать значения так, чтобы он всегда смотрел на тот же диапазон, конечно, с таблицей вы можете заменить $A$2:$A$8
на [A]
Если вы хотите найти строку, в которой значение в B не совпадает со смежным значением в A, используйте оператор IF @pataluc:
В столбце Проверка используйте оператор IF, например =IF($A2=$B2,1,0)
и снова, если вместо этого используется таблица, делайте =IF([@[A]=[@[B],1,0)
В обоих примерах отфильтруйте таблицы по значению 0 в Check, выберите все строки и удалите их.