Я бросал игральную кость много раз и вводил результаты в Excel. Я хотел бы посчитать количество единиц, следующих за единицей, двоек, следующих за единицей, троек, следующих за единицей и так далее. Поэтому мне нужно было бы как-то ссылаться на предыдущую ячейку, чтобы Excel считал, например, эту двойку, только если предыдущая ячейка содержала 1. Как это сделать? Я бы предпочел решение на рабочем листе, а не на VBA. Спасибо!
решение1
это 2 только если предыдущая ячейка содержала 1
Например, если данные занимают диапазон A1:A10, то для подсчета двоек, находящихся непосредственно под единицами, используйте формулу
=COUNTIFS(A2:A10,2,A1:A9,1)
В VBA используйте
MsgBox WorksheetFunction.CountIfs(Range("A1:A9"),1,Range("A2:A10"),2)
решение2
Это решение по сути является улучшенной версиейАкины. Он автоматически подстраивается под введенное количество бросков кубика и отображает все различные результаты одновременно.
Создайте рабочий лист следующим образом:
Введите следующую формулу в C3
и заполните ее C3:H8
:
=COUNTIFS(
$A$3:INDEX($A:$A,ROW($A$3)+COUNT($A:$A)-2),C$1,
$A$4:INDEX($A:$A,ROW($A$3)+COUNT($A:$A)-1),$B3
)