Как найти пропущенные числа в excel

Предположим, у вас есть длинный список порядковых номеров для маркировки элементов, таких как номера чеков в банковских выписках, обычно мы прокручиваем и находим недостающие порядковые номера вручную. Иногда это довольно сложно и требует много времени. Вы можете придумать хитрые способы справиться с этим. Да, есть несколько простых способов быстро и удобно определить и найти последовательность отсутствующих чисел в Excel 2007, Excel 2010 и Excel 2013.

Определите последовательность отсутствующих чисел с помощью формулы ЕСЛИ

Определите последовательность отсутствующих чисел с помощью формулы массива

Определите последовательность пропущенных чисел с помощью Kutools for Excel быстро


стрелка синий правый пузырь Определите последовательность отсутствующих чисел с помощью формулы ЕСЛИ

Как мы все знаем, большинство порядковых номеров имеют фиксированное приращение 1, например, 1, 2, 3,…, N. Следовательно, если вы можете определить, что число не меньше 1, чем его следующее число, это означает, что число отсутствует. .

Мы покажем вам руководства с примером, как показано на следующем скриншоте:

док определить недостающие числа 1

1. В пустой ячейке введите формулу = ЕСЛИ (A3-A2 = 1; «»; «Отсутствует»), и нажмите Enter ключ. В этом случае мы вводим формулу в ячейку B2.

док-идентификация-отсутствующие-номера2

Если нет пропущенных чисел, эта формула ничего не вернет; если пропущенные числа существуют, он вернет текст «Отсутствует» в активной ячейке.

2. Выберите ячейку B2 и перетащите маркер заполнения над диапазоном ячеек, который вы хотите содержать эту формулу. Теперь он идентифицирует отсутствующие числа с текстом «Отсутствует» в соответствующих ячейках столбца B. См. Следующий снимок экрана:

док-идентификация-отсутствующие-номера3


стрелка синий правый пузырь Определите последовательность отсутствующих чисел с помощью формулы массива

Иногда требуется не только определить последовательность отсутствующих номеров, но и перечислить отсутствующие номера. Вы можете справиться с этим, выполнив следующие шаги:

1. в соседней ячейке введите формулу = SMALL(IF(ISNA(MATCH(ROW(A$1:A$30),A$1:A$30,0)),ROW(A$1:A$30)),ROW(A1))

A1: A30 = диапазон чисел, последовательность для проверки от 1 до 30

2. нажмите Shift + Ctrl + Enter Ключи вместе, чтобы закончить формулу. Скопируйте формулу, пока не получите # ЧИСЛО! ошибки, означающие, что были перечислены все отсутствующие числа. Смотрите скриншот:

док-идентификация-отсутствующие-номера4


стрелка синий правый пузырь Определите последовательность пропущенных чисел с помощью Kutools for Excel быстро

Вышеупомянутые методы могут идентифицировать только отсутствующую чистую числовую последовательность, если у вас есть такая последовательность, как AA-1001-BB, AA-1002-BB, они могут не работать успешно. Но не волнуйся, Kutools for Excelмощная функция — Найти отсутствующий порядковый номер может помочь вам быстро определить недостающую последовательность.

Примечание:Чтобы применить это Найти отсутствующий порядковый номер, во-первых, вы должны скачать Kutools for Excel, а затем быстро и легко примените эту функцию.

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

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

2. Нажмите Кутулс > Вставить > Найти отсутствующий порядковый номер, см. снимок экрана:

3. в Найти отсутствующий порядковый номер диалоговое окно:

(1.) Если вы выберете Вставка нового столбца со следующим отсутствующим маркером вариант, все недостающие порядковые номера отмечены текстом Отсутствующий в новом столбце рядом с вашими данными. Смотрите скриншот:

док-идентификация-отсутствующие-числа 6

(2.) Если вы выберете Вставка отсутствующего порядкового номера вариант, все недостающие числа были вставлены в список последовательностей. Смотрите скриншот:

док-идентификация-отсутствующие-числа 7

(3.) Если вы выберете Вставка пустых строк при включении отсутствующих порядковых номеров вариант, все пустые строки вставляются, когда отсутствуют числа. Смотрите скриншот:

док-идентификация-отсутствующие-числа 8

(4.) Если вы выберете Цвет заливки фона вариант, расположение недостающих номеров будет выделено сразу. Смотрите скриншот:

док-идентификация-отсутствующие-числа 9


стрелка синий правый пузырь Определите последовательность пропущенных чисел с помощью Kutools for Excel быстро


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

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

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

вкладка kte 201905


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

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

офисный дно

Найти недостающие значения

На чтение 2 мин. Просмотров 6.5k.

= ЕСЛИ( СЧЕТЕСЛИ ( список ; значение ); «OK» ; «Отсутствует» )

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

Функция СЧЕТЕСЛИ подсчитывает ячейки, которые отвечают критериям, возвращая число найденных вхождений. Если такие ячейки не найдены, СЧЕТЕСЛИ возвращает ноль.

Найти недостающие значения

В показанном примере, формула в G5 является:

=ЕСЛИ(СЧЁТЕСЛИ($B$5:$B$10;F5);»ОК»; «Отсутствует»)

Где «список» является именованный диапазон, что соответствует диапазону B6: B11.

Функция ЕСЛИ требует логического теста, чтобы вернуть значение ИСТИНА или ЛОЖЬ. В этом случае, если значение найдено, положительное число возвращается СЧЕТЕСЛИ, который имеет значение ИСТИНА, в результате чего, если вернуть «ОК». Если значение не найдено, возвращается ноль, который имеет значение ЛОЖЬ, и ЕСЛИ возвращает «Отсутствует».

Количество пропущенных значений

=СУММПРОИЗВ(—(СЧЁТЕСЛИ(B5:B10;F5:F7)=0))

Для подсчета значений в одном списке, которые отсутствуют в другом списке, вы можете использовать формулу, основанную на функциях СЧЕТЕСЛИ и СУММПРОИЗВ.

Количество пропущенных значений

Функции СЧЕТЕСЛИ проверяет значения в диапазоне от критериев. Часто, только один критерий подается, но в этом случае мы поставляем больше чем один критерий.

Для диапазона, мы даем СЧЕТЕСЛИ именованному диапазону лист1 (B6: B11) и критериям мы обеспечиваем именованный диапазон лист2 (F6: F8).

Потому что мы даем СЧЕТЕСЛИ более чем один критерий, мы получим более одного результата в массиве, который выглядит следующим образом: {2; 1; 0}

Мы хотим, чтобы рассчитывались только те значения, которые отсутствуют, которые по определению имеют счетчик, равный нулю, поэтому мы преобразуем эти значения ИСТИНА и ЛОЖЬ с «= 0» заявлением, что дает: {ЛОЖЬ; ЛОЖЬ; ИСТИНА}

Тогда мы изменим значения ИСТИНА/ЛОЖЬ в 1 и 0 с двойным отрицательным оператором (-), который производит: {0, 0, 1}

Наконец, мы используем СУММПРОИЗВ, чтобы сложить элементы в массиве и получить общее количество пропущенных значений.

Locating missing sequential numbers can be an arduous task when working with long lists of data. For example, you might want to locate business check numbers that haven’t been logged into a balance sheet, or maybe you need to find missing product IDs. Manually searching the list is tedious and prone to oversight. Excel offers conditional formatting for locating gaps but this does not provide a list of missing numbers. The solution lies with using Excel’s array feature to traverse a data list automatically and extract missing sequential numbers, even if the number list is out of order.

  1. Open your spreadsheet in Microsoft Excel and look at the numbers list. You need to determine the range of numbers you wish to consider. This range might be based on the lowest and highest values in the number list or some known range. For example, if the last check number you logged into a balance sheet last year was 8950 and the last check number you logged in for this year was 11859, your range would be 8951 to 11859.

  2. Click the first cell in an empty column, hold the «Shift» key and click the last data cell in that column. This selects all cells between those two points. You need at least as many cells selected as the anticipated number of missing values. The easiest way to guarantee you select enough cells is to select the number of cells equal to the range difference. In the example, subtracting 8951 from 11859 results in a range of 2,908 numbers. By selecting cells «1» through «2908,» you guarantee a large enough output area, even if no numbers are found.

  3. Type the following code:

    =SMALL(IF(COUNTIF(B:B,ROW($B$8951:$B$11859))=0,ROW($B$8951:$B$11859),»»),ROW())

    Column «B» refers to the number list, and the row numbers refer to the data range, so this example searches the «B» column for numbers 8951 through 11859, and the missing numbers will be output in the empty column.

  4. Press «Ctrl-Shift-Enter» to enter the typed formula as an array. If you just press «Enter,» the formula will not work.

 

В столбце А записаны числа от 1 до 1000 с произвольными пропусками. За одну формулу, вывести в столбец В все пропущенные значения. Помогите сделать, пожалуйста, ничего не получается.

 

Jack Famous

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

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

OS: Win 8.1 Корп. x64 | Excel 2016 x64: | Browser: Chrome

#2

26.10.2020 18:15:47

Цитата
Андрей Картошкин: ничего не получается

не видно, чтобы вы пытались…

Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄

 

Пробовал в гугл таблицах вот такое
=arrayformula(ЕСЛИ((arrayformula(A2:A-A1:A))>2;ЕСЛИ(arrayformula(A2:A-A1:A)>2;SEQUENCE(arrayformula(A2+A1+1);1;arrayformula(A1:A+1);1);0);ЕСЛИ((arrayformula(A2:A-A1:A))>1;arrayformula(A1:A+1);0)))

И различные способы предложенные в интернете для Excel, но ничего не работает.

Изменено: Андрей Картошкин26.10.2020 18:26:04

 

rud.666

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

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

 

Макросом очень хорошая идея, но к большому сожалению требуют именно формулой((

 

buchlotnik

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

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

Excel 365 Бета-канал

#6

26.10.2020 18:42:03

Цитата
Андрей Картошкин написал:
требуют именно формулой

версия эксель какая?

Соблюдение правил форума не освобождает от модераторского произвола
<#0>

 

2019
Или в google sheets

Изменено: Андрей Картошкин26.10.2020 18:45:08

 

vikttur

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

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

=НАИМЕНЬШИЙ(ЕСЛИ(СЧЁТЕСЛИ($A$1:$A$9;СТРОКА(A1:ИНДЕКС(A:A;МАКС($A$1:$A$9))))=0;СТРОКА(A1:ИНДЕКС(A:A;МАКС($A$1:$A$9))));СТРОКА(A1))
Формула массива, ввод тремя клавишами

 

БМВ

Модератор

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

Excel 2013, 2016

ну можно так
=IFERROR(SMALL(IF(ISNA(MATCH(ROW(INDEX(A:A;MIN(A:A)):INDEX(A:A;MAX(A:A)));A:A;));ROW(INDEX(A:A;MIN(A:A)):INDEX(A:A;MAX(A:A))));ROW(A1));»»)

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

 

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

 

buchlotnik

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

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

Excel 365 Бета-канал

#11

26.10.2020 19:14:59

если именно одной формулой, то

Код
=ФИЛЬТР(ПОСЛЕД(МАКС(A1:A9));ЕНД(ПОИСКПОЗ(ПОСЛЕД(МАКС(A1:A9));A1:A9;)))

но это 365, а не 2019; если же формулу можно протягивать — то варианты предложены выше

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

  • Задание.xlsx (30.85 КБ)

Соблюдение правил форума не освобождает от модераторского произвола
<#0>

 

rud.666

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

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

Вот еще интересный вариант, но, правда, тоже макросами (. Что делать: откройте этот файл, разрешите макросы, сверните файл. Перейдите в книгу, где нужно работать. Нажмите Ctrl+Q. Следуйте инструкциям.

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

 

БМВ

Модератор

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

Excel 2013, 2016

#13

26.10.2020 20:54:28

Цитата
rud.666 написал:
Вот еще интересный вариант

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

 

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

Программисты — это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!

 

Mershik

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

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

#15

26.10.2020 21:17:52

БМВ, Ігор Гончаренко,  :D

пусть еще будет

интересный

вариант

Код
Sub ads()
Dim i As Long, lr As Long, arr, cell As Range
lr = Cells(Rows.Count, 1).End(xlUp).Row
k = 0
Z = Application.WorksheetFunction.Max(Range("A1:A" & lr))
ReDim arr(Z - lr, 0)
For i = 1 To Z
    Set cell = Range("A1:A" & lr).Find(What:=i, LookIn:=xlFormulas, LookAt:=xlWhole)
    If cell Is Nothing Then
        arr(k, 0) = i
        k = k + 1
    End If
Next i
Range("B1:B" & UBound(arr)) = arr
End Sub

Изменено: Mershik26.10.2020 21:30:07

Не бойтесь совершенства. Вам его не достичь.

 

buchlotnik

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

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

Excel 365 Бета-канал

#16

27.10.2020 00:43:21

в Гуглах:

Код
=FILTER(ARRAYFORMULA(СТРОКА(A1:A1000));ARRAYFORMULA(ЕНД(ПОИСКПОЗ(СТРОКА(A1:A1000);A1:A9;0))))

Соблюдение правил форума не освобождает от модераторского произвола
<#0>

Как показать пропущенные числа из диапазона чисел?

noobik

Дата: Среда, 03.01.2018, 15:02 |
Сообщение № 1

Группа: Пользователи

Ранг: Новичок

Сообщений: 30


Репутация:

0

±

Замечаний:
20% ±


Excel 2010

Доброго времени суток! Собственно, вопрос: есть диапазон чисел от 0 до 1000, в столбце показаны не все числа (например, 1, 5, 20, 34 и т.д), как в отдельном столбце отобразить пропущенные числа?

 

Ответить

vikttur

Дата: Среда, 03.01.2018, 15:15 |
Сообщение № 2

Группа: Друзья

Ранг: Участник клуба

Сообщений: 2941

Собственно, вопрос: где есть диапазон чисел? У Вас?
В таком случае берите карандаш, листок бумаги, вписывайте пропущенные, переносите на лист Excel. Не забудьте карандаш заточить :)

 

Ответить

noobik

Дата: Среда, 03.01.2018, 15:22 |
Сообщение № 3

Группа: Пользователи

Ранг: Новичок

Сообщений: 30


Репутация:

0

±

Замечаний:
20% ±


Excel 2010

Так и сделал :)

Сообщение отредактировал noobikСреда, 03.01.2018, 15:22

 

Ответить

bmv98rus

Дата: Среда, 03.01.2018, 15:39 |
Сообщение № 4

Группа: Друзья

Ранг: Участник клуба

Сообщений: 4009


Репутация:

760

±

Замечаний:
0% ±


Excel 2013/2016

noobik, вам vikttur так намекнул, что пример, пусть даже простой, нужно приложить.
Массивная

Код

=IFERROR(SMALL(IF(COUNTIF(A:A;ROW($1:$1000))=0;ROW($1:$1000);9^9);ROW());»»)


Замечательный Временно просто медведь , процентов на 20.

Сообщение отредактировал bmv98rusСреда, 03.01.2018, 17:58

 

Ответить

Nic70y

Дата: Среда, 03.01.2018, 15:57 |
Сообщение № 5

Группа: Друзья

Ранг: Экселист

Сообщений: 8136


Репутация:

1999

±

Замечаний:
0% ±


Excel 2010

Код

=НАИМЕНЬШИЙ(ЕСЛИ(ЕНД(ПОИСКПОЗ(СТРОКА(A1:A1001)-1;A$1:A$1000;));СТРОКА(A1:A1001)-1);СТРОКА(C1))


ЮMoney 41001841029809

 

Ответить

noobik

Дата: Среда, 03.01.2018, 16:14 |
Сообщение № 6

Группа: Пользователи

Ранг: Новичок

Сообщений: 30


Репутация:

0

±

Замечаний:
20% ±


Excel 2010

Спасибо) Да я знаю, что пример надо прикладывать, да только там примера — один столбец с цифрами) Пробовал немного сам разобраться, вышло корявенько)
Еще раз всем спасибо.

 

Ответить

vikttur

Дата: Среда, 03.01.2018, 16:16 |
Сообщение № 7

Группа: Друзья

Ранг: Участник клуба

Сообщений: 2941

Цитата

да только там примера — один столбец с цифрами

Кому не лень, тот вместо Вас создал у себя пример (один столбец с цифрами) и на нем рисовал формулу…

Сообщение отредактировал viktturСреда, 03.01.2018, 16:18

 

Ответить

noobik

Дата: Среда, 03.01.2018, 16:30 |
Сообщение № 8

Группа: Пользователи

Ранг: Новичок

Сообщений: 30


Репутация:

0

±

Замечаний:
20% ±


Excel 2010

Но это были не Вы.
Еще раз всем огромное спасибо.

 

Ответить

bmv98rus

Дата: Среда, 03.01.2018, 16:40 |
Сообщение № 9

Группа: Друзья

Ранг: Участник клуба

Сообщений: 4009


Репутация:

760

±

Замечаний:
0% ±


Excel 2013/2016

vikttur, иногда я сильно жалею, что на планете формулы не переводятся как тут,, а порой наоборот. ;-)


Замечательный Временно просто медведь , процентов на 20.

 

Ответить

vikttur

Дата: Среда, 03.01.2018, 17:09 |
Сообщение № 10

Группа: Друзья

Ранг: Участник клуба

Сообщений: 2941

noobik, мое бухтение — не о лени. Вы не поняли основного — пример нужно показывать, даже небольшой — помогающим легче и меньше времени уйдет на помощь. А часто бывает, что пример помогает понять то,что недосказано в описании задачи: расположение данных, их форматы и проч.

P.S. Глянул формулы… Не уверен, что работают правильно. Пропускаются числа — не закреплены верхние границы диапазонов. А проверить негде :)
bmv98rus, что-то одно лишнее: или 9^9, или проверка на ошибку.

Сообщение отредактировал viktturСреда, 03.01.2018, 17:40

 

Ответить

bmv98rus

Дата: Среда, 03.01.2018, 18:20 |
Сообщение № 11

Группа: Друзья

Ранг: Участник клуба

Сообщений: 4009


Репутация:

760

±

Замечаний:
0% ±


Excel 2013/2016

vikttur, Про $1 я сам давно заметил. Спера так сделал, а потом убрал случайно. на ошибку проверял с целью скрыть все что выше 1000 при размножении, но недодумал, что появятся группа 9^9 в конце списка. А так как уникальности в исходных данных гарантировать нельзя, то анализ сколько пропущено изначально сильно усложнит, но надо подумать.

тормознуто вышло

Код

=IF(ROW()<=(1000-SUMPRODUCT(IF(COUNTIF($A$1:$A$1000;$A$1:$A$1000)>0;1/COUNTIF($A$1:$A$1000;$A$1:$A$1000);0)));SMALL(IF(COUNTIF($A$1:$A$1000;ROW($1:$1000))=0;ROW($1:$1000);9^9);ROW());»»)

К сообщению приложен файл:

noobik.xlsx
(10.1 Kb)


Замечательный Временно просто медведь , процентов на 20.

Сообщение отредактировал bmv98rusСреда, 03.01.2018, 18:56

 

Ответить

Nic70y

Дата: Среда, 03.01.2018, 19:19 |
Сообщение № 12

Группа: Друзья

Ранг: Экселист

Сообщений: 8136


Репутация:

1999

±

Замечаний:
0% ±


Excel 2010

bmv98rus,

Код

=ЕСЛИОШИБКА(НАИМЕНЬШИЙ(ЕСЛИ(ЕНД(ПОИСКПОЗ(СТРОКА(A$1:A$1001)-1;A$1:ИНДЕКС(A:A;ПОИСКПОЗ(9E+307;A:A));));СТРОКА(A$1:A$1001)-1);СТРОКА(C1));»»)

К сообщению приложен файл:

1154899.xlsx
(31.0 Kb)


ЮMoney 41001841029809

 

Ответить

bmv98rus

Дата: Среда, 03.01.2018, 19:58 |
Сообщение № 13

Группа: Друзья

Ранг: Участник клуба

Сообщений: 4009


Репутация:

760

±

Замечаний:
0% ±


Excel 2013/2016

Nic70y, Ага, А я за одно поморщил мозг на предмет вычисления количества уникальных в исходно. + не обратил внимание, что от 0 надо, но это поправимо, ну и еще один обработчик ошибки :-)

Код

=IFERROR(MATCH(SMALL(IF(ISNA(MATCH(ROW($1:$1001)-1;$A:$A;0));ROW($1:$1001);9^9);ROW());ROW(A:A);0)-1;»»)

ну и конечно

Код

=IFERROR(AGGREGATE(15;6;(ROW($1:$1001)-1)/ISNA(MATCH(ROW($1:$1001)-1;$A:$A;0));ROW());»»)


Замечательный Временно просто медведь , процентов на 20.

Сообщение отредактировал bmv98rusСреда, 03.01.2018, 20:27

 

Ответить

vikttur

Дата: Среда, 03.01.2018, 20:30 |
Сообщение № 14

Группа: Друзья

Ранг: Участник клуба

Сообщений: 2941

bmv98rus, эта же (из сообщения №4) рабочая:

Код

=ЕСЛИОШИБКА(НАИМЕНЬШИЙ(ЕСЛИ(СЧЁТЕСЛИ(A:A;СТРОКА($1:$1001)-1)=0;СТРОКА($1:$1001)-1);СТРОКА(A1));)

Вариант для любого количества ячеек в диапазоне:

Код

=МИН(ЕСЛИ(СЧЁТЕСЛИ(A:A;C1+СТРОКА($1:$1001))=0;C1+СТРОКА($1:$1001)))

При очень больших массивах увеличить нижний диапазон. Хотя… не понадобится — на больших массивах будет тормозить )
Да, и ноль отслеживать отдельно.

К сообщению приложен файл:

1000.xlsx
(9.0 Kb)

Сообщение отредактировал viktturСреда, 03.01.2018, 20:58

 

Ответить

bmv98rus

Дата: Среда, 03.01.2018, 20:57 |
Сообщение № 15

Группа: Друзья

Ранг: Участник клуба

Сообщений: 4009


Репутация:

760

±

Замечаний:
0% ±


Excel 2013/2016

vikttur, c поправкой на ,»») для красоты, да. :-) не учел что SMALL игнорит False/True , ну и понеслось :-) .
А вот что будет работать быстрее COUNTIF или MATCH? По идее Match до первого найденного, значит должно быть быстрее и экономичнее.

Код

=IFERROR(SMALL(IF(ISNA(MATCH(ROW($1:$1001)-1;$A:$A;0));ROW($1:$1001)-1);ROW(A1));»»)


Замечательный Временно просто медведь , процентов на 20.

 

Ответить

vikttur

Дата: Среда, 03.01.2018, 21:01 |
Сообщение № 16

Группа: Друзья

Ранг: Участник клуба

Сообщений: 2941

Цитата

c поправкой на ,»»)

Жертвую красотой сознательно. Мухи к мухам, котлеты отдельно.

Цитата

что будет работать быстрее

Если по возрастанию, то MATCH с неточным поиском вообще летать будет ). Бинарный поиск работает быстрее.
COUNTIF умеет определять диапазон, MATCH будет перебирать весь указанный.

Сообщение отредактировал viktturСреда, 03.01.2018, 21:06

 

Ответить

bmv98rus

Дата: Среда, 03.01.2018, 22:08 |
Сообщение № 17

Группа: Друзья

Ранг: Участник клуба

Сообщений: 4009


Репутация:

760

±

Замечаний:
0% ±


Excel 2013/2016

[offtop]

MATCH будет перебирать весь указанный

Спорить не буду, но мне кажется все оптимизированы под диапазон занятый, правд Match массив ожидает … [/offtop]


Замечательный Временно просто медведь , процентов на 20.

 

Ответить

ЕСЛИВГОЛОВЕМАЛО

Дата: Среда, 27.05.2020, 17:07 |
Сообщение № 18

Группа: Пользователи

Ранг: Новичок

Сообщений: 12


Репутация:

0

±

Замечаний:
0% ±


Excel 2019

vikttur, c поправкой на ,»») для красоты, да. :-) не учел что SMALL игнорит False/True , ну и понеслось :-) .
А вот что будет работать быстрее COUNTIF или MATCH? По идее Match до первого найденного, значит должно быть быстрее и экономичнее.

=ЕСЛИОШИБКА(НАИМЕНЬШИЙ(ЕСЛИ(ЕНД(ПОИСКПОЗ(СТРОКА($1:$1001)-1;$A:$A;0));СТРОКА($1:$1001)-1);СТРОКА(A1));»»)

Добрый день. Использовал вашу формулу, но не совсем подходит. Возможно ли ее усложнить?, чтобы выводилось число еще и с доп условием, например: пропущенное или следующее число для «Ивана». Exel знаю не так хорошо, чтобы включить условие в вашу формулу:(

К сообщению приложен файл:

11.xlsx
(8.4 Kb)

 

Ответить

Pelena

Дата: Среда, 27.05.2020, 18:15 |
Сообщение № 19

Группа: Админы

Ранг: Местный житель

Сообщений: 18797


Репутация:

4284

±

Замечаний:
±


Excel 2016 & Mac Excel

ЕСЛИВГОЛОВЕМАЛО, создайте свою тему, эта тема закрыта


«Черт возьми, Холмс! Но как??!!»
Ю-money 41001765434816

 

Ответить

Предположим, у вас есть длинный список порядковых номеров для маркировки элементов, таких как номера чеков в выписках по счету, обычно мы прокручиваем и находим недостающие порядковые номера вручную. Иногда это довольно сложно и требует много времени. Вы можете придумать хитрые способы справиться с этим. Да, есть несколько простых способов быстро и удобно определить и найти последовательность отсутствующих чисел в Excel 2007, Excel 2010 и Excel 2013.

Определите последовательность отсутствующих чисел с помощью формулы ЕСЛИ

Определить последовательность отсутствующих чисел с помощью формулы массива

Определить последовательность отсутствующих чисел с помощью Kutools for Быстро Excel

Найдите и выделите отсутствующие числа в последовательности:

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

Kutools for Excel : с более чем 200 удобными надстройками Excel, можно бесплатно попробовать без ограничений в течение 60 дней. Скачать и бесплатную пробную версию прямо сейчас!

->


Содержание

  1. Определите последовательность пропущенных чисел с помощью формулы ЕСЛИ
  2. С помощью формула массива
  3. Быстрое определение последовательности отсутствующих чисел с помощью Kutools for Excel
  4. Быстрое определение последовательности отсутствующих чисел с помощью Kutools for Excel

Определите последовательность пропущенных чисел с помощью формулы ЕСЛИ

Как мы все знаем, большинство порядковых номеров имеют фиксированное приращение из 1, например 1, 2, 3,…, N. Следовательно, если вы можете определить, что число не меньше 1, чем следующее за ним число, это означает отсутствие числа.

Мы покажем вам представлены учебные пособия с примером, показанным на следующем снимке экрана:

1. В пустой ячейке введите формулу = IF (A3-A2 = 1, “”, “Отсутствует”) и нажмите клавишу Enter . В этом случае мы вводим формулу в ячейку B2.

Если нет пропущенных чисел, эта формула ничего не вернет; если пропущенные числа существуют, он вернет текст «Отсутствует» в активной ячейке.

2. Выделите ячейку B2 и перетащите маркер заполнения над диапазоном ячеек, который вы хотите содержать эту формулу. Теперь он идентифицирует отсутствующие числа с текстом «Отсутствует» в соответствующих ячейках столбца B. См. Следующий снимок экрана:


С помощью формула массива

Иногда требуется не только определить последовательность пропущенных чисел, но и перечислить отсутствующие числа. Вы можете справиться с этим, выполнив следующие шаги:

1. в соседней ячейке введите формулу = SMALL (IF (ISNA (MATCH (ROW (A $ 1: A $ 30), A $ 1: A $ 30,0)), ROW (A $ 1: A $ 30) ), СТРОКА (A1))

A1: A30 = диапазон чисел, последовательность для проверки против – от 1 до 30

2. Одновременно нажмите клавиши Ctrl + Shift + Enter , чтобы завершить формулу. Скопируйте формулу, пока не получите # ЧИСЛО! ошибки, означающие, что были перечислены все отсутствующие числа. См. Снимок экрана:


Быстрое определение последовательности отсутствующих чисел с помощью Kutools for Excel

Только указанные выше методы могут Определите отсутствующую чистую числовую последовательность, если у вас есть такая последовательность, как AA-1001-BB, AA-1002-BB, они могут не работать успешно. Но не волнуйтесь, мощная функция Kutools for Excel Найти отсутствующий порядковый номер может помочь вам быстро определить недостающую последовательность.

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

После установки Kutools for Excel сделайте следующее:

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

2. Нажмите Kutools > Вставить > Найти отсутствующий порядковый номер , см. Снимок экрана:

3. В диалоговом окне Найти отсутствующий порядковый номер :

(1.) Если вы выбрали Вставить новый столбец со следующим отсутствующим маркером вариант, все отсутствующие порядковые номера были отмечены текстом Missing в новом столбце рядом с вашими данными. См. Снимок экрана:

(2.) Если вы выберете Вставка отсутствующего порядкового номера , все недостающие номера были вставлены в список последовательностей. См. Снимок экрана:

(3.) Если вы выберете Вставка пустых строк при включении отсутствующих порядковых номеров , все пустые строки вставляются, если отсутствуют номера. См. Снимок экрана:

(4.) Если вы выберете Заполнить цвет фона , расположение недостающих чисел будет выделено сразу. См. Снимок экрана:


Быстрое определение последовательности отсутствующих чисел с помощью Kutools for Excel

Kutools for Excel : с более чем 300 удобными надстройками Excel, попробуйте бесплатно без ограничений в течение 30 дней. Загрузите и бесплатную пробную версию прямо сейчас!


Функции СЧЕТЕСЛИ проверяет значения в диапазоне от критериев. Часто, только один критерий подается, но в этом случае мы поставляем больше чем один критерий.

Для диапазона, мы даем СЧЕТЕСЛИ именованному диапазону лист1 (B6: B11) и критериям мы обеспечиваем именованный диапазон лист2 (F6: F8).

Потому что мы даем СЧЕТЕСЛИ более чем один критерий, мы получим более одного результата в массиве, который выглядит следующим образом: {2; 1; 0}

Мы хотим, чтобы рассчитывались только те значения, которые отсутствуют, которые по определению имеют счетчик, равный нулю, поэтому мы преобразуем эти значения ИСТИНА и ЛОЖЬ с «= 0» заявлением, что дает: {ЛОЖЬ; ЛОЖЬ; ИСТИНА}

Тогда мы изменим значения ИСТИНА/ЛОЖЬ в 1 и 0 с двойным отрицательным оператором (-), который производит: {0, 0, 1}

Наконец, мы используем СУММПРОИЗВ, чтобы сложить элементы в массиве и получить общее количество пропущенных значений.

Все категории

  • Фотография и видеосъемка
  • Знания
  • Другое
  • Гороскопы, магия, гадания
  • Общество и политика
  • Образование
  • Путешествия и туризм
  • Искусство и культура
  • Города и страны
  • Строительство и ремонт
  • Работа и карьера
  • Спорт
  • Стиль и красота
  • Юридическая консультация
  • Компьютеры и интернет
  • Товары и услуги
  • Темы для взрослых
  • Семья и дом
  • Животные и растения
  • Еда и кулинария
  • Здоровье и медицина
  • Авто и мото
  • Бизнес и финансы
  • Философия, непознанное
  • Досуг и развлечения
  • Знакомства, любовь, отношения
  • Наука и техника


2

Как в программе Microsoft Excel можно автоматически определить какого порядкового номера не хватает в числах? Например:1,2,3,4,6,7­<wbr />,8,10,12,13 и т.д.

Во время просмотра видно что отсутствует номер 5, 9 и 11 а когда счёт от 1 до 130 это очень долго и сложно найти отсутствующее число, можно ли это сделать как то автоматически?

2 ответа:



2



0

Допустим, эти числа, обозначающие порядковые номера, расположены в столбце А, например, в ячейках с А6 по А135. Тогда вы в каком либо столбце, например в столбце F, начиная с 7 строки, т.е. в ячейке F7 пишете такую формулу: ЕСЛИ(A7-A6>1;»*»;»»)­<wbr />.

В формуле обозначения ячеек записываются латинскими буквами. Теперь выделяете ячейку F7, подводите курсор к правому нижнему углу ячейки (там черный квадратик). Тогда курсор из обычного вида перейдёт в вид прямой чёрный крестик (+). Теперь, нажимаете левую клавишу мыши и удерживая её нажатой, протягиваете курсор по всему столбцу F, включая ячейку F135, и после этого отпускаете клавишу мышки. Тем самым Вы скопируете формулу на весь столбец F, точнее на диапазон ячеек F7-F135. В тех строках, в которых разность между значениями в текущей и вышестоящей строке больше 1, появятся звёздочки (*).



2



0

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

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

и нажимаем Условное форматирование(Гла­<wbr />вная / группа Стили / Условное форматирование).

в открывшемся меню

  • выбираем пункт Использовать формулу для определения форматируемых ячеек
  • пишем формулу, определяющую в каком случае надо форматировать ячейку =A2-A1<>1
  • вводим формат для форматирования ячейки, нажав кнопку Формат . . . (например заливка определенным цветом)

Нажимаем кнопку OK

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

Читайте также

Если слово пишется в графе единицы измерения, в этом случае формула будет выглядеть так:

=ЕСЛИ( ИЛИ( ЦЕЛОЕ( ОСТАТ(A1;100)/10)=1 ; ОСТАТ(A1 ; 10)>=5;ОСТАТ(A1 ; 10)=0) ; «штук» ; ЕСЛИ( ОСТАТ(A1;10)=1 ; «штука» ; «штуки»))

Если требуется написать в тексте число и количество штук через пробел, в этом случае формула примет вид:

=A1&» «&ЕСЛИ( ИЛИ( ЦЕЛОЕ( ОСТАТ(A1;100)/10)=1 ; ОСТАТ(A1;10)>=5 ; ОСТАТ(A1;10)=0) ; «штук» ; ЕСЛИ( ОСТАТ(A1;10)=1 ; «штука»;»штуки»))

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

Если слово надо писать в отдельную графу, то числа из ячейки A1 формула примет вид:

=ЕСЛИ( ИЛИ( ЦЕЛОЕ( ОСТАТ(A1;100)/10) = 1 ; ОСТАТ( A1 ; 10 )>=5 ; ОСТАТ(A1 ; 10)=0) ; «ящиков» ; ЕСЛИ( ОСТАТ( A1 ; 10)=1 ; «ящик» ; «ящика»))

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

=A1&» «&ЕСЛИ( ИЛИ( ЦЕЛОЕ( ОСТАТ(A1;100)/10) = 1 ; ОСТАТ( A1 ; 10 )>=5 ; ОСТАТ(A1 ; 10)=0) ; «ящиков» ; ЕСЛИ( ОСТАТ( A1 ; 10)=1 ; «ящик» ; «ящика»))

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

Чтобы скопировать формулу в несколько ячеек не нарушая форматирование, нужно выделить ячейку с формулой. Навести курсор на правый нижний угол ячейки (там, где квадратик), схватиться курсором-крестиком за угол и растянуть формулу на несколько ячеек. После того, как растянули, в правом нижнем углу появится временный значок «Параметры автозаполнения» (на картинке обведен сиреневым квадратом). Наводите на него курсор, появится галочка, нажимаете на нее, проваливаетесь в меню. Выбираете пункт «Заполнить только значения». Формула скопируется, форматирование не пострадает.

Чтобы именно заданные проценты прибавить к заданному числу надо составить формулу:

  1. Выбираем ячейку, где будет находится результат, и ставим там «=» (равно)…
  2. Выбираем ячейку, где находится заданное число…
  3. Ставим знак «+» (плюс)…
  4. Открываем скобку «(«…
  5. Повторяем действие по пункту 2…
  6. Ставим знак «*» (умножить)…
  7. Выбираем ячейку, где находится заданный процент или просто ставим цифру процента…
  8. Ставим знак «%» (процент)…
  9. Закрываем скобку «)»…
  10. Нажимаем «Enter» (энтер)…

Формула готова, результат получен в виде цифры, выглядит эта формула примерно так:

=K22+(K22*20%)

или так:

=K22+(K22*L22%)

Ценники в Excel можно сделать самому, вручную создав шаблон, а потом заполняя его данными по мере необходимости. К сожалению, без использования макросов не обойтись, поэтому готовый шаблон выложить не представляется возможным.

Однако есть альтернативный вариант, причем очень неплохой. В сети есть сервис МойСклад в котором можно формировать ценники он-лайн, а затем выгружать их в Excel и распечатывать. Мне кажется, что это будет более профессиональный подход, чем делать ценники вручную.

Понравилась статья? Поделить с друзьями:
  • Как найти промежуточные итоги в excel
  • Как найти промежуточное значение в excel
  • Как найти производную от excel
  • Как найти произведение ячеек по строке в excel
  • Как найти произведение чисел в word