Себастьян Пользователь Сообщений: 42 |
Всем доброго дня! |
vikttur Пользователь Сообщений: 47199 |
Формула массива: |
vikttur Пользователь Сообщений: 47199 |
Так лучше. Простая формула: |
Владимир Пользователь Сообщений: 8196 |
vikttur, у Вас ищет вторую не пустую с конца. Формула массива: «..Сладку ягоду рвали вместе, горьку ягоду я одна.» |
Себастьян Пользователь Сообщений: 42 |
{quote}{login=vikttur}{date=30.08.2011 10:41}{thema=}{post}Так лучше. Простая формула: |
Себастьян Пользователь Сообщений: 42 |
{quote}{login=Владимир}{date=30.08.2011 10:55}{thema=}{post}vikttur, у Вас ищет вторую не пустую с конца. Формула массива: |
Владимир Пользователь Сообщений: 8196 |
Интересно, зачем я написал фразу — «формула массива»? «..Сладку ягоду рвали вместе, горьку ягоду я одна.» |
vikttur Пользователь Сообщений: 47199 |
Кто же знал! (Ответ: глаза протри) |
Себастьян Пользователь Сообщений: 42 |
{quote}{login=Владимир}{date=30.08.2011 11:05}{thema=}{post}Интересно, зачем я написал фразу — «формула массива»?{/post}{/quote} |
Себастьян Пользователь Сообщений: 42 |
{quote}{login=vikttur}{date=30.08.2011 11:05}{thema=}{post}Кто же знал! (Ответ: глаза протри) |
Себастьян Пользователь Сообщений: 42 |
а подскажите |
vikttur Пользователь Сообщений: 47199 |
Не вижу формулы. Что барахлит? Расширьте в формуле диапазон, что ли? |
Казанский Пользователь Сообщений: 8839 |
#14 30.08.2011 20:37:42 Если нет аллергии на макросы — вот простая UDF. Прикрепленные файлы
|
Группа: Пользователи Ранг: Прохожий Сообщений: 8
Замечаний: |
Здравствуйте. Подскажите пожалуйста как выйти из данного положения:
Имеется столбец с цифрами … среди которых имеются пустые строчки (ячейки) либо «0» … Необходимо выписать в другой столбец по порядку (не оставляя между ними пустых и равных «0») все значения >0 исключая пустые и равные нулю…
Фильтр применять в данном случае нельзя.
Пытался найти функцию «найти следующую не пустую ячейку», но не нашел…. аналог имеется или нет?
Заранее благодарен за помощь.
Азат
Hey Guys I have data from year 2009 to 2015, then 2016 to 2020 is blank, followed by a value in 2021 and then again blank cells till 2025. Here is what I want my formula to do:
- In case the value is available, pick that value(very easy and don’t need any help on this)
- In case the value is not available, identify the next non blank cell (x2) and use it to create a formula something like:
(x2-x1)/(no .of years) where no. of years is the difference in years of x2 and x1 (in first case it will be 2021-2015). - This will become the formula for 2016 and then repeat the same activity for 2017, and now the no. of years calculated will be between 2016 and 2021.
Any help on computations of this will be appreciated. Non vba solutions are requested for this.
Thanks
asked Jul 23, 2017 at 19:28
2
I believe what you’re trying to do is interpolate between data for the known years. Because you don’t provide any data, I made up some in order to illustrate one approach.
The trend is based on an equation in cell B3, =5*SIN(B2/4), which is dragged down and plotted in blue in the chart. Similarly, the interpolation is based on an equation in D9, =4+(D$14-D8)/(ROW(D$14)-ROW(D8)), which is dragged down and plotted in red. The interpolation here is based on what you provided, but of course, the equation is just made up in order to somewhat approach the (made up) trend. Perhaps you can modify these concepts to fit with your situation and ask again if you still need help. Thanks.
answered Jul 24, 2017 at 0:57
Tony MTony M
1,6552 gold badges16 silver badges32 bronze badges
3
Как вы могли найти и вернуть n-е непустое значение ячейки из столбца или строки в Excel? В этой статье я расскажу о некоторых полезных формулах для решения этой задачи.
Найдите и верните n-е непустое значение ячейки из столбца с формулой
Найти и вернуть n-е непустое значение ячейки из строки с формулой
Найдите и верните n-е непустое значение ячейки из столбца с формулой
Например, у меня есть столбец данных, как показано на следующем снимке экрана, теперь я получу третье непустое значение ячейки из этого списка.
Пожалуйста, введите эту формулу: =INDEX($A$1:$A$25,SMALL(ROW($A$1:$A$25)+(100*($A$1:$A$25=»»)), 3))&»» в пустую ячейку, в которую вы хотите вывести результат, например, D2, а затем нажмите Shift + Ctrl + Enter вместе, чтобы получить правильный результат, см. снимок экрана:
Внимание: В формуле выше A1: A25 это список данных, который вы хотите использовать, и номер 3 указывает на третье непустое значение ячейки, которое вы хотите вернуть, если вы хотите получить вторую непустую ячейку, вам просто нужно изменить число 3 на 2, как вам нужно.
Найти и вернуть n-е непустое значение ячейки из строки с формулой
Если вы хотите найти и вернуть n-е непустое значение ячейки в строке, вам может помочь следующая формула, сделайте следующее:
Введите эту формулу: =INDEX($A$1:$M$1,SMALL(IF($A$1:$M$1<>»»,COLUMN($A$1:$M$1)-COLUMN($A$1)+1),4)) в пустую ячейку, где вы хотите найти результат, а затем нажмите Shift + Ctrl + Enter ключи вместе, чтобы получить результат, см. снимок экрана:
Примечание: В приведенной выше формуле A1: M1 — это значения строки, которые вы хотите использовать, а число 4 — это четвертое непустое значение ячейки, которое вы хотите вернуть, если вы хотите получить вторую непустую ячейку, вам просто нужно изменить число 4 на 2, как вам нужно.
Лучшие инструменты для работы в офисе
Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%
- Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
- Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон…
- Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны…
- Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
- Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
- Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии…
- Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
- Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF…
- Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.
Вкладка Office: интерфейс с вкладками в Office и упрощение работы
- Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
- Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
- Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
Комментарии (10)
Оценок пока нет. Оцените первым!
Сообщение от DV68
В1:
Код
=ЕСЛИ(A1="";ПРОСМОТР(2;1/(A$1:A1<>"");C$1:C1);D1)
Код
=IF(A1="",LOOKUP(2,1/(A$1:A1<>""),C$1:C1),D1)
У меня английская версия Экселя 2003 года, для меня справедлив второй вариант. Но так как записано, у меня не работает. Отчаился и думал, что предложенное решение совсем неправильно, однако, это не так. Просто проблемы с запятыми ( , ), которые надо заменить на точку с запятой ( ; ). И, о чудо, всё работает. Осталось только понять как.
Предложенная формула второго варианта в рабочем виде для меня выглядит так:
Код
=IF(A1="";LOOKUP(2;1/(A$1:A1<>"");C$1:C1);D1)
У этой задачи есть ещё способ решения, которым я её и решил, — как обычно со мной бывает, но не так как подразумевалось. Он достаточно извращённый и не обладает такой универсальностью, но для меня хоть так было сносно.
Мне понадобилось вводить специальный столбец для обслуживания подобной функциональности: столбец хранит адреса нужных ячеек. Берёт он эти адреса так:
Код
=IF(A2<>"";CELL("address";E2);C1)
Интересующий столбец берёт значения, исходя из адресов в этом спецстолбце так:
Код
=IF(A2<>"";INDIRECT(C2);OFFSET(INDIRECT(C1);;-1))
Почему сразу A2 а не A1 станет понятно, когда обратите внимание, что формула ссылается в одном из условий на значение ячейки строкой выше. Ну и в этом отсутствие универсальности, собственно, — взять значение выше самой первой строки в Экселе не получится. Так что для первых ячеек формулу мультиплицировать нельзя. В общем, я прикладываю оба рабочих решения в Экселе.
Свой способ я уже применил к требуемым данным, и уже наверно, не стану переделывать. Впрочем, не хотел бы когда-то иметь необходимость возвращаться для каких-то изменений в своё решение.
Это совсем несущественно, но интересно, какой из вариантов решения жрёт меньше вычислительной мощьности.
И мой поклон DV68 за такой изящный вариант.
На чтение 2 мин. Просмотров 184 Опубликовано 22.05.2021
Как вы могли найти и вернуть n-е непустое значение ячейки из столбца или строки в Excel? В этой статье я расскажу о некоторых полезных формулах для решения этой задачи.
Найти и вернуть n-е непустое значение ячейки из столбца с формулой
Найти и вернуть n-е непустое значение ячейки из строки с формулой
Найти и вернуть n-е непустое значение ячейки из столбца с формулой
Например , У меня есть столбец данных, как показано на следующем снимке экрана, теперь я получу третье непустое значение ячейки из этого списка.
Введите эту формулу: = ИНДЕКС ($ A $ 1: $ A $ 25, МАЛЫЙ (ROW ($ A $ 1: $ A $ 25) + (100 * ($ A $ 1: $ A $ 25 = “”)), 3)) & “” в пустую ячейку, в которую вы хотите вывести результат, например, D2, а затем нажмите Ctrl + Shift + Enter вместе, чтобы получить правильный результат, см. снимок экрана:
Не e : В приведенной выше формуле – это список данных, который вы хотите использовать, и номер 3 указывает на третье непустое значение ячейки, которое вы хотите вернуть, если вы хотите получить вторую непустую ячейку, вам просто нужно изменить число 3 на 2, как вам нужно. .
Найти и вернуть n-е значение непустой ячейки из строки с формулой
Если вы хотите найти и вернуть n-е непустое значение ячейки в строке, следующая формула может вам помочь, сделайте следующее:
Введите эту формулу: = ИНДЕКС ($ A $ 1: $ M $ 1, МАЛЫЙ (IF ($ A $ 1: $ M $ 1 “”, COLUMN ($ A $ 1: $ M $ 1) -COLUMN ($ A $ 1) +1), 4)) в пустую ячейку, в которой вы хотите найти результат, а затем нажмите клавиши Ctrl + Shift + Enter . вместе, чтобы получить результат, см. снимок экрана:
Примечание. В формуле выше A1: M1 – это значения строки, которые вы хотите использовать, а число – четвертое непустое значение ячейки, которое вы хотите вернуть, если вы хотите получить вторую непустую ячейку, вам просто нужно изменить число 4 на 2, как вам нужно.
Функция ЕПУСТО в Excel используется для наличия текстовых, числовых, логических и прочих типов данных в указанной ячейке и возвращает логическое значение ИСТИНА, если ячейка является пустой. Если в указанной ячейке содержатся какие-либо данные, результатом выполнения функции ЕПУСТО будет логическое значение ЛОЖЬ.
Примеры использования функции ЕПУСТО в Excel
Пример 1. В таблице Excel находятся результаты (баллы) по экзамену, который проводился в учебном заведении. В данной электронной ведомости напротив некоторых студентов оценки не указаны, поскольку их отправили на пересдачу. В столбце рядом вывести текстовую строку «Сдал» напротив тех, кому выставили оценки, и «На пересдачу» — напротив не сдавших с первого раза.
Исходные данные:
Выделим ячейки C3:C18 и запишем следующую формулу:
Формула ЕСЛИ выполняет проверку возвращаемого результата функции ЕПУСТО для диапазона ячеек B3:B18 и возвращает один из вариантов («На пересдачу» или «Сдал»). Результат выполнения функции:
Теперь часть данной формулы можно использовать для условного форматирования:
- Выделите диапазон ячеек C3:C18 и выберите инструмент: «ГЛАВНАЯ»-«Стили»-«Условное форматирование»-«Создать правило».
- В появившемся окне «Создание правила форматирования» выберите опцию: «Использовать формулы для определения форматируемых ячеек» и введите следующую формулу:
- Нажмите на кнопку «Формат» (как на образцу), потом укажите в окне «Формат ячеек» красный цвет заливки и нажмите ОК на всех открытых окнах:
На против незаполненных (пустых) ячеек или двоек мы получаем соответственное сообщение «На пересдачу» и красную заливку.
Почему нужно использовать функцию ЕПУСТО при проверке пустых ячеек
У выше указанном примере можно изменить формулу используя двойные кавычки («») в место функции проверки ячеек на пустоту, и она также будет работать:
=ЕСЛИ(ИЛИ(B3=»»;B3=2);»На пересдачу»;»Сдал»)
Но не всегда! Все зависит от значений, которые могут содержать ячейки. Обратите внимание на то как по-разному себя ведут двойные кавычки, и функция ЕПУСТО если у нас в ячейках находятся одни и те же специфические значения:
Как видно на рисунке в ячейке находится символ одинарной кавычки. Первая формула (с двойными кавычками вместо функции) ее не видит. Более того в самой ячейке A1 одинарная кавычке не отображается так как данный спецсимвол в Excel предназначенный для отображения значений в текстовом формате. Это удобно, например, когда нам нужно отобразить саму формулу, а не результат ее вычисления как сделано в ячейках D1 и D2. Достаточно лишь перед формулой ввести одинарную кавычку и теперь отображается сама формула, а не возвращаемый ее результат. Но функция ЕПУСТО видит, что в действительности ячейка А1 не является пустой!
Проверка на пустую ячейку в таблице Excel
Пример 2. В таблице Excel записаны некоторые данные. Определить, все ли поля заполнены, или есть как минимум одно поле, которое является пустым.
Исходная таблица данных:
Чтобы определить наличие пустых ячеек используем следующую формулу массива (CTRL+SHIFT+Enter):
Функция СУММ используется для определения суммы величин, возвращаемых функцией —ЕПУСТО для каждой ячейки из диапазона B3:B17 (числовых значений, поскольку используется двойное отрицание). Если запись СУММ(—ЕПУСТО(B3:B17) возвращает любое значение >0, функция ЕСЛИ вернет значение ИСТИНА.
Результат вычислений:
То есть, в диапазоне B3:B17 есть одна или несколько пустых ячеек.
Примечание: в указанной выше формуле были использованы символы «—». Данный вид записи называется двойным отрицанием. В данном случае двойное отрицание необходимо для явного преобразования данных логического типа к числовому. Некоторые функции Excel не выполняют автоматического преобразования данных, поэтому механизм преобразования типов приходится запускать вручную. Наиболее распространенными вариантами преобразования текстовых или логических значений к числовому типу является умножение на 1 или добавление 0 (например, =ИСТИНА+0 вернет число 1, или =«23»*1 вернет число 23. Однако использование записи типа =—ИСТИНА ускоряет работу функций (по некоторым оценкам прирост производительности составляет до 15%, что имеет значение при обработке больших объемов данных).
Как посчитать количество пустых ячеек в Excel
Пример 3. Рассчитать средний возраст работников офиса. Если в таблице заполнены не все поля, вывести соответствующее сообщение и не выполнять расчет.
Таблица данных:
Формула для расчета (формула массива):
Функция ЕСЛИ выполняет проверку диапазона на наличие пустых ячеек (выражение СУММ(—ЕПУСТО(B3:B12))). Если СУММ вернула значение >0, будет выведено сообщение, содержащее количество незаполненных данными ячеек (СЧИТАТЬПУСТОТЫ) и строку «поля не заполнены», которые склеены знаком «&» (операция конкатенации).
Результат вычислений:
Особенности использования функции ЕПУСТО в Excel
Функция ЕПУСТО в Excel относится к числу логических функций (выполняющих проверку какого-либо условия, например, ЕСЛИ, ЕССЫЛКА, ЕЧИСЛО и др., и возвращающих результаты в виде данных логического типа: ИСТИНА, ЛОЖЬ). Синтаксическая запись функции:
=ЕПУСТО(значение)
Единственный аргумент является обязательным для заполнения и может принимать ссылку на ячейку или на диапазон ячеек, в которых необходимо определить наличие каких-либо данных. Если функция принимает диапазон ячеек, функция должна быть использована в качестве формулы массива.
Примечания:
- Если в качестве аргумента функции было явно передано какое-либо значение (например, =ЕПУСТО(ИСТИНА), =ЕПУСТО(«текст»), =ЕПУСТО(12)), результат ее выполнения – значение ЛОЖЬ.
- Если требуется, чтобы функция возвращала значение ИСТИНА, если ячейка не является пустой, ее можно использовать совместно с функцией НЕ. Например, =НЕ(ЕПУСТО(A1)) вернет ИСТИНА, если A1 не является пустой.
- Запись типа =ЕПУСТО(АДРЕС(x;y)) всегда будет возвращать значение ложь, поскольку функция АДРЕС(x;y) возвращает ссылку на ячейку, то есть непустое значение.
- Функция возвращает значение ЛОЖЬ даже в тех случаях, когда в переданной в качестве аргумента ячейке содержится ошибка или ссылка на ячейку. Это суждение справедливо и для случаев, когда в результате выполнения какой-либо функции в ячейку была выведена пустая строка. Например, в ячейку A1 была введена формула =ЕСЛИ(2>1;””;ЛОЖЬ), которая вернет пустую строку «». В этом случае функция =ЕПУСТО(A1) вернет значение ЛОЖЬ.
- Если требуется проверить сразу несколько ячеек, можно использовать функцию в качестве формулы массива (выделить требуемое количество пустых ячеек, ввести формулу «=ЕПУСТО(» и в качестве аргумента передать диапазон исследуемых ячеек, для выполнения использовать комбинацию клавиш Ctrl+Shift+Enter)
Скачать примеры функции ЕПУСТО в Excel
Функция ЕПУСТО() в MS EXCEL
Задача функции ЕПУСТО() , английский вариант ISBLANK(), — проверять есть ли в ячейке число, текстовое значение, формула или нет. Если в ячейке А1 имеется значение 555, то формула = ЕПУСТО(А1) вернет ЛОЖЬ, а если ячейка А1 пуста, то ИСТИНА.
Синтаксис функции ЕПУСТО()
ЕПУСТО(значение)
Значение — значением может быть все что угодно: текст, число, ссылка, имя, пустая ячейка, значение ошибки, логическое выражение.
Использование функции
В файле примера приведены несколько вариантов проверок:
1. Если в проверяемой ячейке содержится число, текстовое значение, формула, то функция вернет логическое значение ИСТИНА.
2. Если проверяемая ячейка пуста, то функция также вернет логическое значение ЛОЖЬ.
Проверка диапазона ячеек
Функция ЕПУСТО() проверяет содержимое только одной ячейки. Чтобы подсчитать количество пустых ячеек в диапазоне, то используйте функцию СЧИТАТЬПУСТОТЫ() , но если ячейки содержат значение Пустой текст («»), то функция СЧИТАТЬПУСТОТЫ() будет подсчитывать также и эти ячейки наряду с действительно пустыми. Об этом читайте в статье Подсчет пустых ячеек.
Чтобы ответить на вопрос «Есть ли хотя бы 1 пустая ячейка в B6:B11?» используйте формулу массива
Чтобы ответить на вопрос «Есть ли хотя бы 1 заполненная ячейка в B6:B11?» используйте формулу массива
Использование функции ЕСЛИ для проверки ячейки на наличие символов
Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим ссылку на оригинал (на английском языке).
Иногда требуется проверить, пуста ли ячейка. Обычно это делается, чтобы формула не выводила результат при отсутствии входного значения.
В данном случае мы используем ЕСЛИ вместе с функцией ЕПУСТО:
Эта формула означает: ЕСЛИ(ячейка D2 пуста, вернуть текст «Пустая», в противном случае вернуть текст «Не пустая»). Вы также можете легко использовать собственную формулу для состояния «Не пустая». В следующем примере вместо функции ЕПУСТО используются знаки «». «» — фактически означает «ничего».
Эта формула означает: ЕСЛИ(в ячейке D3 ничего нет, вернуть текст «Пустая», в противном случае вернуть текст «Не пустая»). Вот пример распространенного способа использования знаков «», при котором формула не вычисляется, если зависимая ячейка пуста:
Если (D3 — Nothing, возвращается Nothing, в противном случае вычисляется формула).
Примеры функции ЕПУСТО для проверки пустых ячеек в Excel
Функция ЕПУСТО в Excel используется для наличия текстовых, числовых, логических и прочих типов данных в указанной ячейке и возвращает логическое значение ИСТИНА, если ячейка является пустой. Если в указанной ячейке содержатся какие-либо данные, результатом выполнения функции ЕПУСТО будет логическое значение ЛОЖЬ.
Примеры использования функции ЕПУСТО в Excel
Пример 1. В таблице Excel находятся результаты (баллы) по экзамену, который проводился в учебном заведении. В данной электронной ведомости напротив некоторых студентов оценки не указаны, поскольку их отправили на пересдачу. В столбце рядом вывести текстовую строку «Сдал» напротив тех, кому выставили оценки, и «На пересдачу» — напротив не сдавших с первого раза.
Выделим ячейки C3:C18 и запишем следующую формулу:
Формула ЕСЛИ выполняет проверку возвращаемого результата функции ЕПУСТО для диапазона ячеек B3:B18 и возвращает один из вариантов («На пересдачу» или «Сдал»). Результат выполнения функции:
Теперь часть данной формулы можно использовать для условного форматирования:
- Выделите диапазон ячеек C3:C18 и выберите инструмент: «ГЛАВНАЯ»-«Стили»-«Условное форматирование»-«Создать правило».
- В появившемся окне «Создание правила форматирования» выберите опцию: «Использовать формулы для определения форматируемых ячеек» и введите следующую формулу:
- Нажмите на кнопку «Формат» (как на образцу), потом укажите в окне «Формат ячеек» красный цвет заливки и нажмите ОК на всех открытых окнах:
На против незаполненных (пустых) ячеек или двоек мы получаем соответственное сообщение «На пересдачу» и красную заливку.
Почему нужно использовать функцию ЕПУСТО при проверке пустых ячеек
У выше указанном примере можно изменить формулу используя двойные кавычки («») в место функции проверки ячеек на пустоту, и она также будет работать:
=ЕСЛИ(ИЛИ( B3=»» ;B3=2);»На пересдачу»;»Сдал»)
Но не всегда! Все зависит от значений, которые могут содержать ячейки. Обратите внимание на то как по-разному себя ведут двойные кавычки, и функция ЕПУСТО если у нас в ячейках находятся одни и те же специфические значения:
Как видно на рисунке в ячейке находится символ одинарной кавычки. Первая формула (с двойными кавычками вместо функции) ее не видит. Более того в самой ячейке A1 одинарная кавычке не отображается так как данный спецсимвол в Excel предназначенный для отображения значений в текстовом формате. Это удобно, например, когда нам нужно отобразить саму формулу, а не результат ее вычисления как сделано в ячейках D1 и D2. Достаточно лишь перед формулой ввести одинарную кавычку и теперь отображается сама формула, а не возвращаемый ее результат. Но функция ЕПУСТО видит, что в действительности ячейка А1 не является пустой!
Проверка на пустую ячейку в таблице Excel
Пример 2. В таблице Excel записаны некоторые данные. Определить, все ли поля заполнены, или есть как минимум одно поле, которое является пустым.
Исходная таблица данных:
Чтобы определить наличие пустых ячеек используем следующую формулу массива (CTRL+SHIFT+Enter):
Функция СУММ используется для определения суммы величин, возвращаемых функцией —ЕПУСТО для каждой ячейки из диапазона B3:B17 (числовых значений, поскольку используется двойное отрицание). Если запись СУММ(—ЕПУСТО(B3:B17) возвращает любое значение >0, функция ЕСЛИ вернет значение ИСТИНА.
То есть, в диапазоне B3:B17 есть одна или несколько пустых ячеек.
Примечание: в указанной выше формуле были использованы символы «—». Данный вид записи называется двойным отрицанием. В данном случае двойное отрицание необходимо для явного преобразования данных логического типа к числовому. Некоторые функции Excel не выполняют автоматического преобразования данных, поэтому механизм преобразования типов приходится запускать вручную. Наиболее распространенными вариантами преобразования текстовых или логических значений к числовому типу является умножение на 1 или добавление 0 (например, =ИСТИНА+0 вернет число 1, или =«23»*1 вернет число 23. Однако использование записи типа =—ИСТИНА ускоряет работу функций (по некоторым оценкам прирост производительности составляет до 15%, что имеет значение при обработке больших объемов данных).
Как посчитать количество пустых ячеек в Excel
Пример 3. Рассчитать средний возраст работников офиса. Если в таблице заполнены не все поля, вывести соответствующее сообщение и не выполнять расчет.
Формула для расчета (формула массива):
Функция ЕСЛИ выполняет проверку диапазона на наличие пустых ячеек (выражение СУММ(—ЕПУСТО(B3:B12))). Если СУММ вернула значение >0, будет выведено сообщение, содержащее количество незаполненных данными ячеек (СЧИТАТЬПУСТОТЫ) и строку «поля не заполнены», которые склеены знаком «&» (операция конкатенации).
Особенности использования функции ЕПУСТО в Excel
Функция ЕПУСТО в Excel относится к числу логических функций (выполняющих проверку какого-либо условия, например, ЕСЛИ, ЕССЫЛКА, ЕЧИСЛО и др., и возвращающих результаты в виде данных логического типа: ИСТИНА, ЛОЖЬ). Синтаксическая запись функции:
Единственный аргумент является обязательным для заполнения и может принимать ссылку на ячейку или на диапазон ячеек, в которых необходимо определить наличие каких-либо данных. Если функция принимает диапазон ячеек, функция должна быть использована в качестве формулы массива.
- Если в качестве аргумента функции было явно передано какое-либо значение (например, =ЕПУСТО(ИСТИНА), =ЕПУСТО(«текст»), =ЕПУСТО(12)), результат ее выполнения – значение ЛОЖЬ.
- Если требуется, чтобы функция возвращала значение ИСТИНА, если ячейка не является пустой, ее можно использовать совместно с функцией НЕ. Например, =НЕ(ЕПУСТО(A1)) вернет ИСТИНА, если A1 не является пустой.
- Запись типа =ЕПУСТО(АДРЕС(x;y)) всегда будет возвращать значение ложь, поскольку функция АДРЕС(x;y) возвращает ссылку на ячейку, то есть непустое значение.
- Функция возвращает значение ЛОЖЬ даже в тех случаях, когда в переданной в качестве аргумента ячейке содержится ошибка или ссылка на ячейку. Это суждение справедливо и для случаев, когда в результате выполнения какой-либо функции в ячейку была выведена пустая строка. Например, в ячейку A1 была введена формула =ЕСЛИ(2>1;””;ЛОЖЬ), которая вернет пустую строку «». В этом случае функция =ЕПУСТО(A1) вернет значение ЛОЖЬ.
- Если требуется проверить сразу несколько ячеек, можно использовать функцию в качестве формулы массива (выделить требуемое количество пустых ячеек, ввести формулу «=ЕПУСТО(» и в качестве аргумента передать диапазон исследуемых ячеек, для выполнения использовать комбинацию клавиш Ctrl+Shift+Enter)
ЕСЛИ: функция Эксель для дополнительной проверки содержимого
Здравствуйте. Сегодня учимся проверять тип содержимого ячейки и комбинировать полученную информацию с функцией ЕСЛИ . Будем определять, содержится ли в ячейке текст, число или формула и т.п.
Если вы еще не знаете, как работает функция ЕСЛИ – прочтите в этой статье и возвращайтесь сюда!
Проверка в Excel, если содержит текст
Что делать, если нужно проверить, содержит ли ячейка строку текста. Используем функцию: =ЕТЕКСТ(ссылка) . Функция вернет ИСТИНА, когда ссылка указывает на ячейку с текстом, ЛОЖЬ – в противном случае. Вот несколько примеров работы:
Получили такие результаты:
То есть, функция считает текстом не только строку, а и число в текстовом формате ячейки, непечатаемый символ.
Обратный результат даст функция =ЕНЕТЕКСТ(ссылка) , которая проверяет, чтобы в ячейке было нетекстовое значение:
Таблица с итогами:
Как будет выглядеть формула в Excel: если ячейка содержит текст, то значение, в противном случае – пустая строка.
Вот так: =ЕСЛИ(ЕТЕКСТ(A1);»Это текст»;»») . Т.е. аргументы:
- Условие: ЕТЕКСТ(А1)
- Значение, если это текст: строка «Это текст»
- Значение, если это не текст: пустая строка (обозначается «»)
Функция Excel ЕЧИСЛО
Вы можете проверить, содержится ли в ячейке цифра. Используется функция ЕЧИСЛО , Excel возвращает такие результаты:
То есть, Excel считает числом цифру, дату, формулу, вернувшую число и ссылку на число.
В Экселе нет функции, проверяющей, что это не число. Чтобы сделать такую операцию, применяем логическую функцию НЕ . Вот так: =НЕ(ЕЧИСЛО(А1)) .
Проверка чётности и нечётности значения
Чтобы определить, чётно число или нет, используем функции:
- ЕЧЁТН – проверить чётность числа
- ЕНЕЧЁТ – определить нечётность
Результаты работы функций:
Если вы попытаетесь проверить нечисловые значения, функции вернут ошибку #ЗНАЧ!
Для условия, если ячейка четная, функция ЕСЛИ может быть построена так: =ЕСЛИ(ЕЧЁТН(A2);»Это чётное значение»;»») . Получим такую таблицу результатов:
Обратите внимание на особенности:
- Функция восприняла дату, как обычное число и выдала правильный результат
- Проверка текста и непечатаемого символа дали ошибку #ЗНАЧ!
- Число в текстовом формате (ячейка А6) было приведено к числовому и проверено, получен правильный результат
- Результат, когда в ячейке формула или ссылка – зависит от результата вычисления или значения в ячейке по ссылке
Проверка в Excel, если ячейка пустая
Для проверки пустоты, есть функция =ЕПУСТО() . Она дает такие результаты:
Видим, что получаем ИСТИНУ лишь тогда, когда в ячейке пустота.
Теперь напишем формулу в Эксель, если пустая ячейка, то выведем какое-то значение: =ЕСЛИ(ЕПУСТО(A2);»Пустая ячейка»;»») .
Похожая проверка в Excel, если не пусто, то формула будет такая: =ЕСЛИ(НЕ(ЕПУСТО(A2));»Ячейка заполнена»;»») .
Проверка на логическое значение
Функция ЕЛОГИЧ проверит, находится ли в ячейке ИСТИНА или ЛОЖЬ. Если это так, вернет ИСТИНУ. В противном случае – ЛОЖЬ
Это все вспомогательные функции, о которых я хотел рассказать. Применяйте их в комбинации с функцией ЕСЛИ и логическими функциями, чтобы получить максимальный эффект возможностей программы. Сейчас готов ответить на ваши вопросы, пишите комментарии!
Excel говорит мне, что мои пустые ячейки не пустые
поэтому в excel я пытаюсь избавиться от пустых ячеек между моими ячейками, в которых есть информация, используя F5 для поиска пустых ячеек, затем Ctrl + — для их удаления и сдвига ячеек вверх. Но когда я пытаюсь это сделать, он говорит мне, что «клеток не найдено».
Я заметил, что если я выбираю свои «пустые» ячейки, Excel все еще считает их: что странно. Но если я нажму Delete на эти выбранные ячейки, счетчик исчезнет, а затем я могу перейти F5, пробелы, Ctrl + — и Сдвиньте клетки вверх, и это сработает.
Итак, мой вопрос в том, как я могу это сделать, но с этими пустыми ячейками, которые Excel считает не пустыми? Я попытался пройти и просто нажать delete над пустыми ячейками, но у меня много данных и понял, что это займет слишком много времени. мне нужно найти способ выбрать эти «пустые» ячейки в пределах выбора данных.
заранее спасибо за вашу помощь! 🙂
15 ответов
откровение: некоторые пустые ячейки на самом деле не пустой! Как я покажу, ячейки могут иметь пробелы, новые строки и true empty:
чтобы найти эти ячейки быстро вы можете сделать несколько вещей.
- на =CODE(A1) формула вернет значение#! если клетка действительно пуста, в противном случае вернется. Это число -номер ASCII в =CHAR(32) .
- если вы выделите ячейку и щелкните в строке формул и используйте курсор, чтобы выбрать все.
удаление этих:
если у вас есть только пробел в клетках они могут быть легко удалены с помощью:
- пресс ctrl + h чтобы открыть find и replace.
- введите одно место в найти, оставить заменить на пустой и убедитесь, что у вас есть матч всей ячейки содержание галочкой в опциях.
- пресс заменить все.
если у вас newlines это сложнее и требует VBA:
-
щелкните правой кнопкой мыши на вкладке листа > Просмотр кода.
затем введите следующий код. Помните Chr(10) новая строка заменяет это только по мере необходимости, например » » & Char(10) это пробел и новая строка:
Теперь запустите ваш код нажатие Ф5 .
после файл поставляется: выберите диапазон интересов для повышения производительности, затем выполните следующие действия:
простой способ выбрать и очистить эти пустые ячейки, чтобы сделать их пустыми:
- пресс ctrl + a или предварительно выберите свой диапазон
- пресс ctrl + f
- оставить найти пустой и выберите матч всего содержимого ячейки.
- нажмите найти все
- пресс ctrl + a выбрать все пустые ячейки нашли
- закрыть поиск диалоговое окно
- пресс backspace или удалить
Это сработало для меня:
- CTR-H для поиска и замены
- оставьте «найти что» пустой
- изменить «заменить на» на уникальный текст, то, что вы
положительный не будет найден в другой ячейке (я использовал ‘xx’) - клик «Заменить Все»
- скопируйте уникальный текст на Шаге 3, чтобы найти то, что’
- удалить уникальный текст в «заменить на»
- нажмите «заменить все»
У меня была аналогичная проблема, когда разбросанные пустые ячейки из экспорта из другого приложения все еще отображались в подсчетах ячеек.
мне удалось очистить их
- выбор столбцов / строк, которые я хотел очистить, а затем делать
- «найти» [без текста] и» заменить » [слово выбора].
- затем я сделал «найти» [слово выбора] и» заменить » на [нет текста].
он избавился от всех скрытых / фантомных персонажей в тех ячейки. Может, это сработает?
все, это довольно просто. Я пытался сделать то же самое, и это то, что сработало для меня в VBA
С уважением, Ананд Ланка
Если у вас нет форматирования или формул, которые вы хотите сохранить, вы можете попробовать сохранить файл в виде текстового файла с разделителями табуляции, закрыть его и снова открыть с помощью excel. Это сработало для меня.
нашел другой способ. Установите автофильтр для все столбцы (важно или вы будете смещать данные), выбрав строку заголовка > вкладка «данные» > сортировка и фильтр — «фильтр». Используйте раскрывающийся список в первом столбце данных, снимите флажок «выбрать все» и выберите только «(пробелы) » > [OK]. Выделите строки (Теперь все вместе) > щелкните правой кнопкой мыши > «удалить строку». Вернитесь к раскрывающемуся меню > ‘Select all’. Престо:)
Не уверен, что это уже было сказано, но у меня была аналогичная проблема с ячейками, ничего не показывающими в них, но не пустыми при запуске формулы IsBlank ().
Я выбрал весь столбец, выбрал Find & Replace, нашел ячейки ни с чем и заменил на 0, затем снова запустил find и replace, найдя ячейки с 0 и заменив их на «».
Это решило мою проблему и позволило мне искать пустые ячейки (F5, специальные, пробелы) и удалять строки, которые были пусты. БУМ.
может не работать для каждого приложения, но это решило мою проблему.
иногда в ячейках есть пробелы, которые кажутся пустыми, но если вы нажмете F2 на ячейке, вы увидите пробелы. Вы также можете выполнить поиск таким образом, если знаете точное количество пробелов в ячейке
Это работает с цифрами.
Если ваш диапазон O8:O20, то в соседнем пустом диапазоне (например, T8: T20) введите =O8/1 и заполните. Это даст вам результат #VALUE для «пустых» ячеек, и ваш исходный номер останется прежним.
затем с выбранным диапазоном T8: 20 (CTL -*, если это еще не так) нажмите F5 и выберите специальный. В специальном диалоге выберите ошибки и нажмите кнопку ОК. Это отменит выбор фактических номеров, оставив только выбранные ячейки #VALUE. Удалите их, и у вас будут фактические пустые ячейки. Скопируйте T8:T20 и вставьте обратно через O8: O20.
по существу, поскольку пустые ячейки не работают, вам нужно преобразовать «пустые» ячейки во что-то, что может зацепиться за специальное. Любое действие, которое будет преобразовано в #VALUE, будет работать, и другие типы «ошибок» также должны поддерживаться.
мой метод похож на предложение Курта выше о сохранении его как файла с разделителями табуляции и повторном импорте. Предполагается, что данные имеют только значения без формул. Это, вероятно, хорошее предположение, потому что проблема «плохих» пробелов вызвана путаницей между пробелами и нулями-обычно в данных, импортированных из какого-то другого места, — поэтому не должно быть никаких формул. Мой метод —разобрать на месте — очень похоже на сохранение в виде текстового файла и повторный импорт, но вы можете сделать это без закрытия и повторного открытия файла. Он находится в разделе Данные > текст в Столбцы > разделители > удалить все символы синтаксического анализа (также можно выбрать текст, если хотите) > готово. Это должно заставить Excel повторно распознавать ваши данные с нуля или из текста и распознавать пробелы как действительно пустые. Вы можете автоматизировать это в подпрограмме:
вы также можете включить эту прокомментированную строку, чтобы эта подпрограмма выполнялась «в фоновом режиме». Для этой подпрограммы улучшается производительность только немного (для других это действительно может помочь). Имя-F2Enter, потому что исходный ручной метод для исправления этой проблемы «пробелов» — заставить Excel распознать формулу, нажав F2 и Enter.
вот как я исправил эту проблему без какого-либо кодирования.
- выберите весь столбец, из которого я хотел удалить «пустые» ячейки.
- щелкните вкладку Условное форматирование вверху.
- Выберите «Новое Правило».
- нажать «форматировать только ячейки, которые содержат».
- изменить «между» На «равно».
- нажмите на поле рядом с полем» равно».
- нажмите одну из проблемных» пустых » ячеек.
- клик кнопка формат.
- выберите случайный цвет для заполнения коробки.
- нажмите «OK».
- Это должно изменить все проблемные» пустые » ячейки на цвет, который вы выбрали. Теперь щелкните правой кнопкой мыши одну из цветных ячеек и перейдите в раздел «сортировать» и «поместить выбранный цвет ячейки сверху».
- это поставит все проблемные ячейки в верхней части столбца, и теперь все ваши другие ячейки останутся в исходном порядке, в котором вы их поместите. Теперь вы можете выбрать все проблемные ячейки в одной группе и нажмите кнопку Удалить ячейку сверху, чтобы избавиться от них.
самым простым решением для меня было:
1) Выберите диапазон и скопируйте его (ctrl+c)
2)Создайте новый текстовый файл (в любом месте, он будет удален в ближайшее время), откройте текстовый файл, а затем вставьте в excel информацию (ctrl+v)
3) Теперь, когда информация в Excel находится в текстовом файле, выполните select all в текстовом файле (ctrl+a), а затем скопируйте (ctrl+c)
4) перейдите к началу исходного диапазона на шаге 1 и вставьте его старая информация из копии на Шаге 3.
готово! Больше никаких фальшивых заготовок! (теперь вы можете удалить временный текстовый файл)
Goto — > Special — >blanks не любит объединенные ячейки. Попробовать unmerging клеток выше диапазона, в котором вы хотите выбрать то, болванками попробовать снова.
У меня была аналогичная проблема с получением формулы COUNTA для подсчета непустых ячеек, она считала все из них (даже пустые как непустые), я попытался =CODE (), но у них не было пробелов или новых строк.
Я обнаружил, что когда я щелкнул в ячейке, а затем щелкнул из нее, формула будет считать ячейку. У меня были тысячи ячеек, поэтому я не мог сделать это вручную. Я написал этот оператор VBA, чтобы буквально проверить все ячейки, и если они были пустыми, то сделать их пустыми. Игнорируйте бессмысленность этого макроса и поверьте мне, что он действительно работал, заставляя Excel распознавать пустые ячейки как пустые.