Можно ли сделать что-то подобное в Excel? Как список активных строк с порядковым номером в них.

Есть столбец B. Он должен показывать порядковый номер, который представляет активную строку на рабочем листе. Посмотри на изображение.

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

Можно ли сделать это простым способом, без необходимости писать много скриптового кода?

PS. Я не эксперт по Excel, поэтому было бы замечательно, если бы было простое решение с помощью встроенных формул Excel. :) PPS. эта функция похожа на нумерованный список Word. Если я удаляю какой-либо элемент списка, последующие элементы будут соответственно обновлять его значения.

РЕДАКТИРОВАТЬ

В столбце A перечислены все задачи от 1 до X. В столбце B перечислены активные задачи. Они упорядочены по его статусу (активно неактивно). Когда я заканчиваю определенное задание (например, седьмое задание), я просто удаляю его значение в столбце B, а затем вручную фиксирую все последующие числа. Таким образом, я знаю, сколько у меня активных задач и какие из них активны.

Пожалуйста, скажите, если это все еще неясно и какая часть нуждается в дополнительном объяснении !!!

PS. Задачи описаны в столбцах C, D и E, но эта часть здесь не актуальна.

3 ответа3

2

Я думаю, что было бы легче управлять, если бы у вас был дополнительный столбец, в котором вы могли бы просто отметить, активна ли строка, скажем, с помощью "x". Тогда в следующем столбце можно автоматически рассчитать порядковый ранг каждой активной строки.

Например, если вы в столбце B держите "x", чтобы обозначить, что строка активна, в столбце C вы можете ввести следующее (в C2):

=IF(B2="x",MAX(C$1:C1)+1,"")

Затем заполните это внизу столбца.

скриншот

1

Основываясь на предложениях, я нашел правильный и простой способ сделать это. Просто используя функцию max .

Формула =MAX($B$X:BY)+1

Например, в ячейку B2 я помещаю формулу =MAX($B$1:B1)+1 а затем копирую ее во все остальные ячейки столбца B и вуаля - я получил то, что мне нужно. Я могу удалить любое значение ячейки, и все последующие будут обновлены немедленно.

Спасибо, парни!

0

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

Если вы ввели «1» в ячейку B1 и скопируйте следующую формулу в ячейку B2:

=IF(B1 = "", OFFSET(B1,-1,0)+1,B1+1)

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

Примечание . Offset позволяет удалить содержимое ячейки и «подпрыгнуть» в списке, если указанная ячейка пуста.

Использование циклического макроса даст большую масштабируемость.

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

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