Как удалить только 0 (ноль) значений из столбца в excel 2010

Я хочу удалить значения из всего столбца, где значение ячеек равно 0.

результирующие ячейки должны быть пустыми.

Как я могу написать формулу для этого? Есть предложения?

TELEPHONE NUMBERS
----------
49 5235102027   <-- Cell has 0 value but shouldn't removed!
35 2578945655
0               <-- Remove this   
90 5322720638
48 5396329155

13 ответов


пресс управления + H, выберите Options и Match entire cell contents и Match case. В Find what тип поля 0 и оставить Replace with поле пустым. Тогда Замените Все. Это удалит все нули, которые стоят отдельно.


Я выбрал столбцы, которые хочу удалить 0 значений, затем щелкнул Данные > Фильтр. В заголовке столбца появляется значок фильтра. Я нажал на этот значок и выбрал только 0 значений и нажал OK. Выбирается только 0 значений. Наконец, очистить содержимое или использовать кнопку Удалить. Проблема Решена!


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

=IF (желаемая ячейка = 0, "", желаемая ячейка)

Это должно вернуть исправленный столбец, который затем вы можете скопировать и вставить обратно поверх исходного столбца в виде текста-если вы просто скопируете вставку, происходит круговая ссылка, и все данные "стираются" из обоих столбцов. Не волнуйтесь, если вы не читали это внимательно Ctrl+Z-ваш лучший друг...


это не отличный ответ, но он должен привести вас к правильному. Я не написал VBA за целую минуту, поэтому я не могу вспомнить точный синтаксис, но вот вам "код psudeo" - я знаю, что вы можете легко реализовать это в макро VBA

for all worksheet.rows
    if cell.value == 0
        then cell.value = " "
    endif
endfor

в основном, VBA проходит через каждую строку. Если ячейка в этой строке является целым числом и равна нулю, просто замените ее на " ". Она не будет пустой, но будет казаться пустой. Я думаю, что есть также свойство cell.value is empty что может очистить содержимое ячейки. Используйте библиотеку в VBA, я уверен, что там есть что-то, что вы можете использовать.

как вариант, если это одноразовая работа, вы можете использовать специальный фильтр. Просто выберите фильтр из ленты и замените все 0 s по строке с пробелом.

Я надеюсь, что это поможет вам начать.


вы не должны использовать пробел ""вместо " 0", потому что excel имеет дело с пространством в качестве значения.

Итак, ответ с опцией by (Ctrl + F). Затем нажмите Параметры и поместите в поиск с "0". Затем щелкните (сопоставить содержимое всей ячейки. Наконец, заменить или заменить все зависит от вас.

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

спасибо.


решение (Ctrl+F)действительно близко - просто последний шаг в процессе не был сформулирован. Хотя автор прав относительно пробела = "0", это не будет иметь никакого значения с помощью этого метода. Данные, которые вы ищете (все, что вы хотите удалить) может быть что угодно.

поиск данных, которые вы хотите удалить (в поле "Поиск"). В поле" заменить " оставьте его пустым. Затем замените или замените все. Ячейки с этими конкретными данными будут опустошены.

Спасибо, что вывел меня на правильный путь.


существует проблема с решением Command + F. Он заменит все 0, если вы нажмете "заменить все". Это означает, что если вы не просматриваете каждый ноль, ноль, содержащийся в важных ячейках, также будет удален. Например, если у вас есть номера телефонов с кодами (420), все они будут изменены на (40).


Я выбрал столбцы, которые хочу удалить 0 значений, затем щелкнул Данные > Фильтр. В заголовке столбца появляется значок фильтра. Я нажал на этот значок и выбрал только 0 значений и нажал OK. Выбирается только 0 значений. Наконец, очистить содержимое или использовать кнопку Удалить.

затем, чтобы удалить пустые строки из удаленных значений 0 удалены. Я нажимаю Данные > Фильтр я нажимаю на этот значок фильтра и невыбранные пробелы копируют и вставляют оставшиеся данные в новый лист.


некоторые из других ответов отлично подходят для удаления нулей из существующих данных, но если у вас есть рабочий лист, который постоянно меняется и хочет предотвратить появление нулей, я считаю, что проще всего использовать условное форматирование, чтобы сделать их невидимыми. Просто выберите диапазон ячеек, которые вы хотите применить к > Условное форматирование > новое правило.

измените тип правила на " форматировать только ячейки, содержащие" Значение ячейки > равно > 0.

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

очевидно, что это также работает с любым другим значением, вы хотите, чтобы исчезнуть.


считайте, что ваши данные находятся в столбце A и теперь напишут кодирование

Sub deletezeros()
    Dim c As Range
    Dim searchrange As Range
    Dim i As Long

    Set searchrange = ActiveSheet.Range("A1", ActiveSheet.Range("A65536").End(xlUp))

    For i = searchrange.Cells.Count To 1 Step -1
        Set c = searchrange.Cells(i)
        If c.Value = "0" Then c.EntireRow.delete
    Next i
End Sub

(Ctrl+H) - > откроется окно найти и заменить - > найти то ,что "0", заменить на " "(оставьте его пустым) - > нажмите "Параметры", отметьте "совпадение всего содержимого ячейки" - > нажмите кнопку "Заменить все".


самый простой способ заключается в следующем: Нажмите кнопку office (вверху слева) Нажмите Кнопку "Параметры Excel " Нажмите " Дополнительно" Прокрутите вниз до "параметры отображения для этого листа" Снимите флажок " показывать ноль в ячейках с нулевым значением" Нажмите кнопку "OK"

вот и все.

:)


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

  1. Нажмите кнопку office (вверху слева)
  2. Нажмите "Параметры Excel"
  3. Нажмите Кнопку "Дополнительно"
  4. прокрутите вниз до "параметры отображения для этого листа"
  5. снимите флажок "показывать ноль в ячейках с нулевым значением"
  6. нажать "ОК"