у меня непересекающийся набор из 9 ячеек:А1,В3,С5,Д-7,Е11,От F13,G17,Н19,I23. Я назначил имя в этих клетках: MyPicks
у меня есть простая формула, чтобы выбрать значение в одной из этих клеток в случайном порядке:
=SMALL(MyPicks,RANDBETWEEN(1,9))
формула работает:
однако каждый раз, когда я изменяю количество клеток в Именованный Диапазон, Я должен вернуться и изменить the 9 в Формуле! Поэтому я решил" исправить " формулу:
первый вариант:
=SMALL(MyPicks,RANDBETWEEN(1,COUNTA(MyPicks)))
это, казалось, работать. Однако COUNTA () подсчитывает только ячейки со значениями или null. Он игнорирует полностью пустые ячейки. Так...........
вторая попытка:
=SMALL(MyPicks,RANDBETWEEN(1,COUNTA(MyPicks)+COUNTBLANK(MyPicks)))
к сожалению, это производит значение#! ошибка потому что COUNTBLANK () не работает на непересекающихся диапазона. Так............
третья попытка:
Я создал небольшой VBA UDF:
Public Function nCount(r As Range) As Long
nCount = r.Count
End Function
использование этого UDF решило проблему. Затем я обнаружил, что мой клиент был макрофбическим, и решение было мгновенно отклонено.
можно ли подсчитать общее количество клеток в Именованный Диапазон без VBA ??