1

У меня есть столбец со значениями, которые повторяются произвольное количество раз, прежде чем начинается следующий блок. Некоторые из этих блоков, однако, не содержат номера вообще. Хотя каждый другой блок уникален, это не так. То есть каждый другой блок содержит числа, которые не встречаются ни в одном другом блоке. Чтобы это исправить, я хотел бы найти способ указать Excel считать от 1 до n и ввести это число в пустые места столбца для каждого пустого «блока». Это то, что выполнимо без VBA?

Example:

123          
123         
123           
123
123





112
112
112
112
111
111
111
111





312
312
312

Идея заключалась бы в том, чтобы поместить несколько единиц в первый интервал, несколько единиц во второй и т.д.

1 ответ1

0

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

Если ваши данные находятся в столбце A , начиная с строки 1, введите

=IF(NOT(ISBLANK(A1)), A1, 1)

в ячейку B1 , и

=IF(NOT(ISBLANK(A2)), A2, IF(NOT(ISBLANK(A1)), 1, B1+1))

в ячейку B2 и перетащите ее вниз, чтобы охватить данные в столбце A (строка 26, для данных образца) или за ее пределами (если хотите).  Это дает такие результаты:

                                                                данные по запросу

Объяснение:

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

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

  • Ячейка B2 следует той же общей схеме: если значение в A2 (ячейка слева) не пустое, отобразите его; в противном случае отобразите сгенерированное число.  Предложение «else» (формула «else»)

    IF(NOT(ISBLANK(A1)), 1, B1+1)
    

    Это проверяет, является ли значение в ячейке слева и на одну строку вверх не пустым, т. Е. Является ли эта строка первой из блока пустых строк.  Если эта строка является первой из блока пустых строк, мы отображаем 1 .  В противном случае мы берем значение из ячейки над этой ячейкой (B1) и добавляем к нему 1 (т. Е. Count).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .