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

0

В приведенном ниже примере нумерация в столбце A пропускает строки, в столбце C которых есть слово «TOTAL», но в следующих строках они снова появляются вверх. Строки со словом «ВСЕГО» в столбце С имеют собственную нумерацию.

Как пример - если некоторые строки содержат «ВСЕГО», столбец А будет:

   Col A   Col C 
    1        S
    2        S
    1      TOTAL
    3        S
    2      TOTAL
    3      TOTAL
    4        S
    5        S
    4      TOTAL

Для достижения вышеуказанной формулы

=IF(C1="TOTAL", COUNTIF(C$1:C1,"TOTAL"), ROW(A1)-COUNTIF(C$1:C1,"TOTAL"))

было использовано. Он работает, но он не распространяется автоматически в столбце A (его необходимо скопировать в столбец - что терпимо).

ВОПРОС: Иногда «ВСЕГО» или «S» в столбце С относится к одному и тому же элементу (столбец D), поэтому необходимо сохранить один и тот же номер. Как игнорировать некоторые строки, но продолжить нумерацию? Желаемый результат:

   Col A   Col C   Col D
    1        S      5A6
    2        S      XD3
    1      TOTAL    4GH
    3        S      D44
    2      TOTAL *  V2S
    2      TOTAL *  V2S
    4        S      GF3
    4        S      GF3 
    3      TOTAL    345 
Marcin
источник
1. Может ли быть более двух ВСЕГО записей для одного и того же значения в столбце D? 2. Будут ли все кратные (ВСЕГО + совпадающее значение col D) всегда последовательными (никаких других промежуточных записей)? 3. Звездочки только для того, чтобы выделить функцию, или вы хотите, чтобы «ВСЕГО *» на записях, которые кратны?
fixer1234
1. Да 2. Они всегда будут последовательными. 3. Звездочки служат только для выделения функции и не отображаются в электронной таблице.
Марцин

Ответы:

0

Я приветствую ваши усилия по созданию двух последовательностей из одной формулы, но я утверждаю, что это трудно поддерживать. Я рекомендую вам установить две последовательности в двух отдельных столбцах (столбцы «помощник»), а затем объединить их в столбце A. Например,

  • A1- =IF(C1="TOTAL", X1, Y1)и перетащите вниз
  • X1 - =IF(C1="TOTAL", 1, 0)
  • X2- =IF(C2="TOTAL", IF(AND(C1="TOTAL", D1=D2), X1, X1+1), X1)и перетащите вниз
  • Y1 - 1
  • Y2- =IF(C2="TOTAL", Y1, Y1+1)и перетащите вниз

Колонны Xи Yбудут «вне поля зрения», и вы сможете их спрятать, если хотите.

G-Man
источник
Это работает прекрасно, но ни одна из этих формул не распространяется вниз по столбцу автоматически при добавлении новой строки, я попытался добавить «ARRRAYFOURMULA», но безуспешно :(
Marcin
1
Марцин - как и в случае с другой проблемой, я считаю, что единственный способ заполнить формулу «по требованию» - это предварительно заполнить ее и использовать тест, такой как ISBLANK, чтобы скрыть ее, пока не появится запись, или использовать VBA, чтобы поместить формулу или результат на месте при срабатывании записи. Есть пределы магии.
fixer1234
G-Man- спасибо! Можно ли изменить формулу из X2 так, чтобы она также учитывала повторяющиеся буквы «S» (как показано в отредактированном вопросе выше)? fixer1234 - я опубликовал вопрос о VBA - он не только не получил ответа, но и получил за него отрицательное голосование, я, должно быть, сделал что-то не так ...
Marcin
Можно ли изменить формулу из X2, чтобы она также учитывала повторяющиеся буквы «S» (как показано в отредактированном вопросе выше)? Ты хоть понимаешь ответ, который я тебе дал? Чтобы изменить результат столбца A для строк, в которых нет текста TOTALв столбце C, вам нужно изменить формулу в Y2 на нечто подобное =IF(C2="TOTAL", Y1, IF(AND(C1="S", C2="S", D1=D2), Y1, Y1+1)).
G-Man
Большой Человек - это сработало. Я только упростил задачу в приведенном выше вопросе - я применяю эти формулы в гораздо более смелом контексте ... иногда я просто теряюсь ... извините за это!
Марцин