Excel только непустые значения

На чтение 7 мин Просмотров 1.7к. Опубликовано 07.11.2020

Содержание

  1. Примеры использования функции ЕПУСТО в Excel
  2. Почему нужно использовать функцию ЕПУСТО при проверке пустых ячеек
  3. Проверка на пустую ячейку в таблице Excel
  4. Как посчитать количество пустых ячеек в Excel
  5. Особенности использования функции ЕПУСТО в Excel

Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим ссылку на оригинал (на английском языке).

Чтобы подсчитать количество ячеек в диапазоне, содержащих значения, используйте функцию СЧЁТЗ.

Иногда при подсчете ячеек удобнее пропускать пустые ячейки, поскольку смысловую нагрузку несут только ячейки со значениями. Например, вы хотите подсчитать общее количество сотрудников, которые сделали продажу (столбец г).

Функция COUNT пропускает пустые значения в D3, D4, D8 и D11 и подсчитывает количество ячеек, содержащих значения в столбце г. Функция находит шесть ячеек в столбце D, содержащий значения, и отображает 6 в качестве выходных данных.

Функция ЕПУСТО в Excel используется для наличия текстовых, числовых, логических и прочих типов данных в указанной ячейке и возвращает логическое значение ИСТИНА, если ячейка является пустой. Если в указанной ячейке содержатся какие-либо данные, результатом выполнения функции ЕПУСТО будет логическое значение ЛОЖЬ.

Примеры использования функции ЕПУСТО в Excel

Пример 1. В таблице Excel находятся результаты (баллы) по экзамену, который проводился в учебном заведении. В данной электронной ведомости напротив некоторых студентов оценки не указаны, поскольку их отправили на пересдачу. В столбце рядом вывести текстовую строку «Сдал» напротив тех, кому выставили оценки, и «На пересдачу» — напротив не сдавших с первого раза.

Выделим ячейки C3:C18 и запишем следующую формулу:

Формула ЕСЛИ выполняет проверку возвращаемого результата функции ЕПУСТО для диапазона ячеек B3:B18 и возвращает один из вариантов («На пересдачу» или «Сдал»). Результат выполнения функции:

Теперь часть данной формулы можно использовать для условного форматирования:

  1. Выделите диапазон ячеек C3:C18 и выберите инструмент: «ГЛАВНАЯ»-«Стили»-«Условное форматирование»-«Создать правило».
  2. В появившемся окне «Создание правила форматирования» выберите опцию: «Использовать формулы для определения форматируемых ячеек» и введите следующую формулу:
  3. Нажмите на кнопку «Формат» (как на образцу), потом укажите в окне «Формат ячеек» красный цвет заливки и нажмите ОК на всех открытых окнах:

На против незаполненных (пустых) ячеек или двоек мы получаем соответственное сообщение «На пересдачу» и красную заливку.

Почему нужно использовать функцию ЕПУСТО при проверке пустых ячеек

У выше указанном примере можно изменить формулу используя двойные кавычки («») в место функции проверки ячеек на пустоту, и она также будет работать:

=ЕСЛИ(ИЛИ( 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 относится к числу логических функций (выполняющих проверку какого-либо условия, например, ЕСЛИ, ЕССЫЛКА, ЕЧИСЛО и др., и возвращающих результаты в виде данных логического типа: ИСТИНА, ЛОЖЬ). Синтаксическая запись функции:

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

  1. Если в качестве аргумента функции было явно передано какое-либо значение (например, =ЕПУСТО(ИСТИНА), =ЕПУСТО(«текст»), =ЕПУСТО(12)), результат ее выполнения – значение ЛОЖЬ.
  2. Если требуется, чтобы функция возвращала значение ИСТИНА, если ячейка не является пустой, ее можно использовать совместно с функцией НЕ. Например, =НЕ(ЕПУСТО(A1)) вернет ИСТИНА, если A1 не является пустой.
  3. Запись типа =ЕПУСТО(АДРЕС(x;y)) всегда будет возвращать значение ложь, поскольку функция АДРЕС(x;y) возвращает ссылку на ячейку, то есть непустое значение.
  4. Функция возвращает значение ЛОЖЬ даже в тех случаях, когда в переданной в качестве аргумента ячейке содержится ошибка или ссылка на ячейку. Это суждение справедливо и для случаев, когда в результате выполнения какой-либо функции в ячейку была выведена пустая строка. Например, в ячейку A1 была введена формула =ЕСЛИ(2>1;””;ЛОЖЬ), которая вернет пустую строку «». В этом случае функция =ЕПУСТО(A1) вернет значение ЛОЖЬ.
  5. Если требуется проверить сразу несколько ячеек, можно использовать функцию в качестве формулы массива (выделить требуемое количество пустых ячеек, ввести формулу «=ЕПУСТО(» и в качестве аргумента передать диапазон исследуемых ячеек, для выполнения использовать комбинацию клавиш Ctrl+Shift+Enter)

Есть именной диапазон L7:L68. В нем строки, пустые или с текстом (постоянно меняются) .
Как в другой диапазон (столбец) выбрать из диапазона L7:L68 все непустые строки, и выстроить их подряд без пробелов?

Пример:
ааа
ббб
(пустая строка)
ллл
(пустая строка)
жжж

надо чтобы в другой столбец собрался текст подряд:
ааа
ббб
ллл
жжж

  • Редакция Кодкампа

17 авг. 2022 г.
читать 2 мин


Вы можете использовать следующий синтаксис для отображения только непустых строк в расширенном фильтре Excel:

<>

В следующих примерах показано, как использовать этот синтаксис в двух разных сценариях:

  • Фильтр для строк, которые не имеют пустых значений в одном конкретном столбце
  • Отфильтровать строки, в которых нет пустых значений ни в одном столбце.

Пример 1. Фильтрация строк, не содержащих пустых значений в одном конкретном столбце

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

Теперь предположим, что мы хотим отфильтровать строки, в которых столбец Team не пуст.

Для этого мы можем определить диапазон критериев в столбце E:

Затем мы можем щелкнуть вкладку « Данные », а затем нажать кнопку « Расширенный фильтр »:

Мы выберем A1:C11 в качестве диапазона списка и E1:E2 в качестве диапазона критериев :

Как только мы нажмем OK , набор данных будет отфильтрован, чтобы отображались только строки, в которых столбец Team не пуст:

Пример 2. Фильтрация строк, не содержащих пустых значений ни в одном столбце

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

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

Для этого мы можем определить диапазон критериев:

Затем мы можем щелкнуть вкладку « Данные », а затем нажать кнопку « Расширенный фильтр ».

Мы выберем A1:C11 в качестве диапазона списка и E1:G2 в качестве диапазона критериев :

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

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные операции в Excel:

Расширенный фильтр Excel: как использовать «Содержит»
Расширенный фильтр Excel: как использовать «Не содержит»
Как отфильтровать несколько столбцов в Excel

1155 / 702 / 203

Регистрация: 22.04.2013

Сообщений: 5,215

Записей в блоге: 1

1

Собрать в новом столбце непустые значения из соседнего

01.10.2018, 10:57. Показов 5810. Ответов 11


Студворк — интернет-сервис помощи студентам

Добрый день.
Есть некий список в столбце С, составленный путём ВПР из других листов .

и в списке из тысячи человек в этом столбце С заполнено только 20-30

вопрос — как можно (без применения бейсика) в столбце Д собрать всех этих 20-30 человек подряд, без пустых строк?
в интернетах не нашёл. формулы невнятные.
если можно объяснить словами — объясните словами, пожалуйста, а я придумаю как конкретно реализовать.

(сделал просто копипастом столбца С в столбец Д и фильтр — выделить непустые, но это некошерно. условие — чтоб оно само там в список появлялось).



0



1852 / 1174 / 190

Регистрация: 27.03.2009

Сообщений: 4,514

01.10.2018, 11:04

2

без вба думаю никак. фильтром…



0



1155 / 702 / 203

Регистрация: 22.04.2013

Сообщений: 5,215

Записей в блоге: 1

01.10.2018, 16:20

 [ТС]

4

Казанский, спасибо
попробую.
с утра у меня ссылка на ексель2 не открывалась. остальные ссылки — ну так себе.

Добавлено через 3 часа 59 минут
«Если в списке числе, среди которых нам нужно вычислить наименьшее число находятся ячейки с текстом, то функция, также как и в случае с пустыми ячейками, игнорирует их.»
это про наименьший()
так что отказать



0



3827 / 2254 / 751

Регистрация: 02.11.2012

Сообщений: 5,928

01.10.2018, 16:25

5

если что то не получается, показываем файл с неудачей.



0



15136 / 6410 / 1730

Регистрация: 24.09.2011

Сообщений: 9,999

01.10.2018, 21:54

6

Yulunga, у Вас проблема не с наименьший(), а с ЕПУСТО(). Замените ЕПУСТО($A$6:$A$18) на ДЛСТР($A$6:$A$18)=0
Или поменять местами аргументы в ЕСЛИ, ;»» можно опустить

Код

=ЕСЛИОШИБКА(ДВССЫЛ("A"&НАИМЕНЬШИЙ(ЕСЛИ(ДЛСТР($A$6:$A$18);СТРОКА($A$6:$A$18));СТРОКА()-СТРОКА($B$5)));"")

Добавлено через 7 минут
Для тысяч строк лучше VBA, повесить процедуру на Worksheet_Calculate, тогда будет автоматически запускаться.



0



1155 / 702 / 203

Регистрация: 22.04.2013

Сообщений: 5,215

Записей в блоге: 1

02.10.2018, 08:41

 [ТС]

7

не, ребят. сдаюсь
не понимаю, как оно работает, поэтому не могу сделать
в столбце Д хочу сделать заполненные ячейки из столбца Ц
то есть
Паредонавос
Водовозова

п.с. бейском не надо. такой файл нужен будет раз в 3 месица примерно, не чаще. так что бейсик излишен.



0



3827 / 2254 / 751

Регистрация: 02.11.2012

Сообщений: 5,928

02.10.2018, 09:08

8

вариант.



1



1155 / 702 / 203

Регистрация: 22.04.2013

Сообщений: 5,215

Записей в блоге: 1

02.10.2018, 10:56

 [ТС]

9

какая-то высшая математика.
надо вариться внутри, чтоб так сразу написать
спасибо большое.
меня в этих формулах смущает СТРОКА(А1), СТРОКА(А2). не могу врубиться, как оно работает



0



3827 / 2254 / 751

Регистрация: 02.11.2012

Сообщений: 5,928

02.10.2018, 13:24

10

можно было в ф-ции ПОИСКПОЗ первым аргументом ставит в каждой строке новое число начиная с 1 но это мутарно вот по этому применяется ф-ция СТРОКА(А1)
СТРОКА(А1) = 1
СТРОКА(А2) = 2



0



866 / 510 / 162

Регистрация: 30.03.2013

Сообщений: 1,048

05.10.2018, 16:07

11

Два варианта без дополнительного столбца



1



1155 / 702 / 203

Регистрация: 22.04.2013

Сообщений: 5,215

Записей в блоге: 1

08.10.2018, 07:59

 [ТС]

12

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



0



Большинство из нас может столкнуться с этой проблемой, когда мы копируем список данных, который содержит несколько пустых ячеек, а затем вставляем их в другой столбец, пустые ячейки также будут вставлены. Это очень раздражает, когда нам не нужны пробелы и мы хотим вставить только непустые ячейки. Как в таком случае быстро и удобно копировать и вставлять в Excel только непустые ячейки? Вот несколько быстрых приемов, чтобы решить эту проблему:

Скопируйте и вставьте только непустые ячейки с помощью команды Перейти к специальной

Копируйте и вставляйте только непустые ячейки с помощью функции фильтра

Скопируйте и вставьте только непустые ячейки с формулой массива

Скопируйте и вставьте только непустые ячейки с кодом VBA

Скопируйте и вставьте только непустые ячейки с Kutools for Excel хорошая идея3


стрелка синий правый пузырь Скопируйте и вставьте только непустые ячейки с помощью команды Перейти к специальной

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

1. Выберите свой список данных, которые вы хотите использовать.

doc-copy-only-nonblanks1

2. Затем нажмите Главная > Найти и выбрать > Перейти к специальному, см. снимок экрана:

doc-copy-only-nonblanks1

3. В Перейти к специальному диалоговое окно, отметьте Константы вариант, см. снимок экрана:

doc-copy-only-nonblanks1

4. Затем нажмите OK, и в списке выбраны только ячейки значений.

doc-copy-only-nonblanks1

5. А затем скопируйте и вставьте данные в нужное место. И были вставлены только непустые значения ячеек. Смотрите скриншот:

doc-copy-only-nonblanks1

Внимание: Этот метод доступен только для констант, он не применяется к ячейкам формулы.


стрелка синий правый пузырь Копируйте и вставляйте только непустые ячейки с помощью функции фильтра

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

2. Нажмите Данные > Фильтр, см. снимок экрана:

документ копировать только без пустых 6

3. Затем нажмите кнопку раскрывающегося списка в правом углу ячейки в выбранном списке и снимите флажок Пробелы вариант в раскрывающемся меню. Смотрите скриншот:
doc-copy-only-nonblanks1

4, Затем нажмите OK, все непустые ячейки были отфильтрованы, как показано на следующем снимке экрана:

doc-copy-only-nonblanks1

5. Наконец, вы можете скопировать отфильтрованные данные и вставить их в любое нужное место.

Внимание: Таким образом вступают в силу и значения, и формулы.



стрелка синий правый пузырь Скопируйте и вставьте только непустые ячейки с формулой массива

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

1. Помимо ваших данных, введите в пустую ячейку следующую формулу:

=LOOKUP(«zzzzz»,CHOOSE({1,2},»»,INDEX(A:A,SMALL(IF($A$1:$A$15<>»»,ROW($A$1:$A$15)),ROWS($B$1:B1)))))

doc-copy-only-nonblanks1

Внимание: В приведенной выше формуле A1: A15 — это список данных, который вы хотите использовать. Вы можете изменить его по своему усмотрению.

2, Затем нажмите Shift + Ctrl + Enter вместе, а затем выберите ячейку B1 и перетащите маркер заполнения в диапазон, который вы хотите содержать эту формулу, и все непустые значения ячеек были извлечены. Смотрите скриншот:

doc-copy-only-nonblanks1

3. Поскольку они являются формулами, когда вы копируете их в другое место, вы должны копировать и вставлять их как значения.

Внимание: Эта формула доступна только для констант и не применяется к ячейкам формулы.


стрелка синий правый пузырь Скопируйте и вставьте только непустые ячейки с кодом VBA

Если вас интересует код VBA, вы можете выполнить следующий код, чтобы завершить эту задачу.

1. Удерживайте ALT + F11 ключи, и он открывает Окно Microsoft Visual Basic для приложений.

2. Нажмите Вставить > Модулии вставьте следующий код в Окно модуля.

Код VBA: копируйте и вставляйте только непустые ячейки в Excel

Sub PasteNotBlanks()
'Update 20140325
Dim rng As Range
Dim InputRng As Range, OutRng As Range
xTitleId = "KutoolsforExcel"
Set InputRng = Application.Selection
Set InputRng = Application.InputBox("Range :", xTitleId, InputRng.Address, Type:=8)
If InputRng.Columns.Count > 1 Then
    MsgBox "Please select one column."
    Exit Sub
End If
Set OutRng = Application.InputBox("Out put to (single cell):", xTitleId, Type:=8)
InputRng.SpecialCells(xlCellTypeConstants).Copy Destination:=OutRng.Range("A1")
End Sub

3, Затем нажмите F5 Нажмите клавишу для запуска этого кода, появится окно с подсказкой, напоминающее вам о выборе диапазона данных, который вы хотите использовать. Смотрите скриншот:

doc-copy-only-nonblanks1

4, Затем нажмите OKпоявится другое окно подсказки, в котором вы сможете выбрать ячейку для ввода данных.

doc-copy-only-nonblanks1

5. Нажмите OK чтобы завершить этот код, и только непустые значения ячеек были вставлены в указанную вами позицию.

Внимание: Этот код доступен только для констант.


стрелка синий правый пузырь Скопируйте и вставьте только непустые ячейки с Kutools for Excel

Есть ли способ намного проще, чем указано выше? Конечно, Kutools for Excel‘s Выбрать непустую ячейкуУтилита s может помочь вам сначала выбрать непустые ячейки, а затем скопировать и вставить их.

После бесплатная установка Kutools for Excel, пожалуйста, сделайте следующее:

1. Выберите диапазон ячеек и щелкните Кутулс > Выберите > Выбрать непустые ячейки. Смотрите скриншот:
документ выберите непустую ячейку 2

2. Затем выбираются непустые ячейки, нажимаем Ctrl + C чтобы скопировать их, затем выберите ячейку, в которой вы хотите вывести результат, нажмите Ctrl + V для вставки выбранных непустых ячеек. Смотрите скриншот:
документ выберите непустую ячейку 3

стрелка синий правый пузырь Скопируйте и вставьте только непустую ячейку


Лучшие инструменты для работы в офисе

Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%

  • Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
  • Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон
  • Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны
  • Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
  • Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
  • Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии
  • Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
  • Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF
  • Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.

вкладка kte 201905


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!

офисный дно

 

Добрый день.
Имеется массив данных (см. вложение). Необходимо из таблицы где чередуются заполненные/пустые ячейки, выбрать в отдельную таблицу списком только заполненные данные. Помогите реализовать идею.  

Прикрепленные файлы

  • Книга1.xlsx (11.84 КБ)

 

Catboyun

Пользователь

Сообщений: 1631
Регистрация: 09.05.2015

вариант/
впр + 2 дополнительных столбца
нд уберете еслиошибка или другими формулами проверки свойств и значений.

Прикрепленные файлы

  • впр+.xls (27.5 КБ)

 

Сергей

Пользователь

Сообщений: 11251
Регистрация: 01.01.1970

#3

26.05.2015 16:52:39

еще вариант

Код
=ИНДЕКС(B$3:B$15;НАИМЕНЬШИЙ(ЕСЛИ(B$3:B$15<>"";СТРОКА($1:$13));СТРОКА(M1)))

Прикрепленные файлы

  • Книга1 (35).xlsx (12.58 КБ)

Лень двигатель прогресса, доказано!!!

 

TImmy

Пользователь

Сообщений: 49
Регистрация: 18.08.2014

#4

26.05.2015 17:37:47

Код
Sub BBBBB()
Dim irng As Range
rws = Cells.SpecialCells(xlLastCell).Row

Range(Cells(1, 2), Cells(rws, 5)).Copy
Cells(1, 7).Select
ActiveSheet.Paste
Application.CutCopyMode = False
Range(Cells(3, 7), Cells(rws, 10)).Select

For Each x In Selection
If x.Value = "" Then
If irng Is Nothing Then
   Set irng = Union(x, x)
Else
   Set irng = Union(irng, x)
End If
End If
Next

If Not irng Is Nothing Then irng.Select
Selection.Delete Shift:=xlUp

End Sub

Изменено: TImmy26.05.2015 17:39:40

 

Всем спасибо! Очень помогли.
С ВПР(), пожалуй наиболее оптимальный вариант при работе с большими объемами данных.

 

Aptus

Пользователь

Сообщений: 3
Регистрация: 27.08.2017

#6

27.08.2017 14:28:20

Сергей, мне очень подходит ваш вариант!  Но в вашем файле вычисляет сразу

B$3:B$15<>»»

, а у меня

B$3:B$15

<>»», потом B$3:B$15

<>»»

.
В результате ошибка. Подскажите какую функцию я не включил?
А лучше обрисую задачу (очень похожа на ту, что выше):
Путевой лист
Столбец с датами, столбец с пробегом.
Задача: В столбец даты медосмотра вставить даты, исключив даты без пробега (такие бывает вносишь, если заправился в выходной).

Я там кое-что вставил — далеко не идеал, но пока обхожусь этим.
А-то лень же каждый месяц дважды вбивать даты!!! ;)
Вот думаю сделать «невидимый» (белый шрифт) столбец (где «подпись») с формулой:

Код
=ЕСЛИ(K39>0;A39;" ")

А потом применить вашу формулу, но цука, не работает!  :cry:  

Прикрепленные файлы

  • Образец.xls (52.5 КБ)

Изменено: Aptus27.08.2017 14:51:19

ИСТИНА где-то рядом!

 

Aptus

Пользователь

Сообщений: 3
Регистрация: 27.08.2017

#7

27.08.2017 19:17:25

Всё, вопрос закрыт. Помогли на

http://www.excelworld.ru/forum/2-35062-1#229635

В результате без лишнего столбца вот такая формула ( мож кому поможет):

Код
=ЕСЛИ(ЕОШИБКА(ИНДЕКС($A$39:$A$55;НАИМЕНЬШИЙ(ЕСЛИ($K$39:$K$55<>"";СТРОКА($A$1:$A$17));СТРОКА(A1))));"";ИНДЕКС($A$39:$A$55;НАИМЕНЬШИЙ(ЕСЛИ($K$39:$K$55<>"";СТРОКА($A$1:$A$17));СТРОКА(A1))))

Изменено: Aptus27.08.2017 21:17:42

ИСТИНА где-то рядом!

 

Bema

Пользователь

Сообщений: 6750
Регистрация: 15.02.2016

Aptus, что-то не нашел в Вашем примере дат без пробега.

Если в мире всё бессмысленно, — сказала Алиса, — что мешает выдумать какой-нибудь смысл? ©Льюис Кэрролл

 

Aptus

Пользователь

Сообщений: 3
Регистрация: 27.08.2017

Надо было Delete попробовать на клетках пробега, но сейчас всё работает и файл в студию:

 

z_sir

Пользователь

Сообщений: 126
Регистрация: 29.07.2017

#10

27.08.2017 21:52:41

Цитата
Aptus написал:
мож кому поможет

первая ячейка и последующие ячейки

Код
=ПОИСКПОЗ(1;A1:A10;-1)
=ЕСЛИ(СЧЁТЗ($A$1:$A$10)>=СТРОКА();ПОИСКПОЗ(1;$A$1:ИНДЕКС($A$1:$A$10;L1-1);-1);"")
 

Друзья, есть такая проблема. Из умной таблицы, в которой КУЧА строк (фамилий рабочих разбитых по Компаниям), я вывел сводную таблицу в которой отображены Компании и количество вышедших на работу людей по числам месяца. Но далеко не все компании (подрядчики) работают каждый месяц. В конце каждого месяца я делаю отчёт и вывожу из сводной таблицы названия компаний, рабочие которой выходили на работу в этом месяце и максимальное количество работников вышедших на работу. А потом в ручную удаляю те строки, которые содержат «пусто». Можно ли как-то выводить в отчёт только те названия компаний, которые содержат хоть одно число (выход на работу), а пустые, чтобы не выводились. Файл прилагаю (количество Компаний ОЧЕНЬ СИЛЬНО сократил, т.к. файл не хотел грузиться). Спасибо.

Прикрепленные файлы

  • 111.xlsx (110.41 КБ)

Изменено: Александр Садковой18.02.2022 07:43:46

 

БМВ

Модератор

Сообщений: 21376
Регистрация: 28.12.2016

Excel 2013, 2016

Александр Садковой,  В исходных добавьте доп. столбец. считающий по строке значения, и запихните в SIGN будет 1 и 0 в зависимости был занят или нет.
В сводной использовать это поле для калькуляции и фильтраци.
Альтернативы — MSQuery, PowerQuery.

Упс, не посмотрел что тема то …. Вам бы создать свою.

Изменено: БМВ18.02.2022 08:17:18

По вопросам из тем форума, личку не читаю.

 

Александр

Пользователь

Сообщений: 6
Регистрация: 17.02.2022

#13

18.02.2022 12:20:23

БМВ, я далеко не профи в excel

Цитата
написал:
доп. столбец. считающий по строке значения, и запихните в SIGN будет 1 и 0

SIGN это куда?
Я думал, что это можно как-то реализовать с помощью формул. Мучался долго, но ничего толком не придумал. Вывести все названия Компаний и напротив значение либо 0 либо max количество работников — не вопрос. Но потом долго удалять Компании с нулём.

Цитата
написал:
Альтернативы — MSQuery, PowerQuery

не знаком с ними :(

Начал изучать VBA, но пока я дойду до того, чтобы написать подобный макрос, я состарюсь :)

Изменено: Александр18.02.2022 13:37:26

 

Александр

Пользователь

Сообщений: 6
Регистрация: 17.02.2022

#14

20.02.2022 14:19:03

, всё, я решил свою проблему с помощью Power Query. Это просто мощнейшая надстройка в Excel !!! Пару дней на её изучение и можно творить чудеса!  8)  

Понравилась статья? Поделить с друзьями:

А вот еще интересные статьи:

  • Excel только название месяца
  • Excel тип для ячейки значение да или нет это
  • Excel только модальные окна
  • Excel тип данных ссылка
  • Excel только если число положительное

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии