Страницы: 1
RSS
При формировании ссылки с помощью ДВССЫЛ возникает ошибка
 
Доброго времени. Пожалуйста, помогите отыскать ошибку в формуле
Код
=ДВССЫЛ("X"&ЦЕЛОЕ(СЛЧИС()*y))  

- где X - буква столбца, а y - число охваченных строк.

[Формулу мне дали на другом форуме, для использования в LibreOffice. Вообще работает, но  с глюком, причем от типа программы явно не зависит: тот же глюк я  увидел после применения формулы в таблицах Google.
Я извиняюсь, что мой вопрос не касается конкретно Excel, но ведь суть работы формул не должна различаться. Именно в Excel не могу проверить, потому как эта программа не может быть установлена в Linux]

В  общем, эта формула должна отображать значение случайно выбранной ячейки  в указанном столбце. Так она и делает, но. Допустим, в столбце, начиная  с первой строки, заполнено 100 ячеек. Формула случайно выбирает одну из  них, и пока выбираются ячейки от 1 до 99, проблем нет. Но если она  выбирает 100-ю ( считая сверху) выдается ошибка #ССЫЛ!
Для  того, чтобы ошибку было лучше видно, я на скриншоте создал вариант  формулы для столбца из трех ячеек. В них цифры 1,2,3.

Получается, отсчет в столбце идет от 0й строки - корень проблемы в этом? Как это исправить?
 
Иван,

насколько я могу видеть из картинки, вы пытаетесь обратиться к ячейке с координатами E0 - такой ячейки на листе не существует.
Попробуйте модернизировать свою формулу в части ...ЦЕЛОЕ(1+СЛЧИС()*(y-1))... для того, чтобы избегать округлений до 0
 
Цитата
IKor написал:
Попробуйте модернизировать свою формулу в части ...ЦЕЛОЕ(1+СЛЧИС()*(y-1))... для того, чтобы избегать округлений до 0
Спс. Помогло, хоть и не полностью. Теперь выпадает либо 1, либо 2. Тройка не выпадает вообще, как и ошибка #ССЫЛ!
На крайний случай и это можно считать решением. Если более изящного решения никто не знает.


Сейчас я тестирую вариант с сотней строк, где в формуле указана 101-я, которая никогда не выпадает.

P.S. Вроде нормально работает. Если обращаться к нашему примеру, я применяю формулу =ДВССЫЛ("E"&ЦЕЛОЕ(1+СЛЧИС()*(4-1)))
То есть число строк указано как 4, но содержимое 4-й никогда не выпадает, так что то, что в ней стоит фактически - не очень важно. Выпадают 1, 2, 3, вроде равновероятно.
Может быть, ее можно и не заполнять.

P.P.S.Да, =ДВССЫЛ("E"&ЦЕЛОЕ(1+СЛЧИС()*(3))) работает ничуть не хуже.

Я думаю, это уже достаточно зрелое решение, и другого не нужно. Спасибо еще раз.
Изменено: Иван Беляевский - 27.07.2020 13:33:01 (UPD)
 
у Google как и в Excel есть такой вариант:
Код
=ДВССЫЛ("X"&СЛУЧМЕЖДУ(1;3))
Соблюдение правил форума не освобождает от модераторского произвола
 
Цитата
buchlotnik написал:
у Google как и в Excel есть такой вариант:
Спасибки, и этот вариант тоже работает. Я потестировал для 3-х строк, но и с большим числом тоже должен работать, как понимаю.
 
Цитата
Иван Беляевский написал:
но и с большим числом
ну да, в пределах 10^308  ;)
Соблюдение правил форума не освобождает от модераторского произвола
Страницы: 1
Наверх