Страницы: 1
RSS
ссылки диапазонов из ячейки для формулы.
 
Доброго времени суток!

Используется формула: =ВЫБОР(1;A1;A2;A3;A4)
Можно ли  в ней указать не сам перечень  A1;A2;A3;A4, а  как-то сослаться  на какую-нибудь ячейку, например B1, в которой указан этот перечень?
 
SergeyD,
через ДВССЫЛ (нельзя)

тема: ссылки диапазонов из ячейки для формулы.
Изменено: evgeniygeo - 05.04.2024 06:24:49
 
Цитата
evgeniygeo написал:
через ДВССЫЛ
А можно пример ДВССЫЛ() в ВЫБОР() вместо списка значений?
Согласие есть продукт при полном непротивлении сторон
 
Sanja,
согласен, через выбор не получится. Как вариант через индекс:
Код
=ИНДЕКС(ДВССЫЛ(ЛЕВСИМВ(B1;ПОИСК(";";B1)-1)&":"&СЖПРОБЕЛЫ(ПРАВСИМВ(ПОДСТАВИТЬ(B1;";";ПОВТОР(" ";20));20)));C1)
 
Sanja, evgeniygeo, Спасибо, вариант рабочий. Но, вычисления происходят для тысячи ячеек, боюсь файл будет тяжёлый и неповоротливый.
Может, быть есть варианты покомпактней?
Изменено: SergeyD - 05.04.2024 08:48:14
 
Sanja,  
Изменено: SergeyD - 05.04.2024 08:51:27
 
evgeniygeo
Спасибо, но ваш вариант у меня не работает - ошибка в формуле  
 
Цитата
SergeyD написал:
Спасибо, но ваш вариант у меня не работает
а у меня все ок (посмотрите файл во вложении)
P.S. чувствуете, как удобно без файла примера от Вас?  ;)
Цитата
SergeyD написал:
Но, вычисления происходят для тысячи ячеек, боюсь файл будет тяжёлый и неповоротливый.
в таком случае, думаю, что лучше пойти в сторону макросов или PQ
Изменено: evgeniygeo - 05.04.2024 08:57:15
 
SergeyD, Вы бы файлик приложили - может быть другой выход из ситуации нашелся бы...
Потому что не до конца понятно - ячейки всегда идут подряд или может быть в итоге рваный диапазон из более чем одной непрерывной области? Если всегда подряд - вообще проблем нет:
Код
=ИНДЕКС(ДВССЫЛ("A1:A4");1)

если рваный - надо изобретать что-то.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
вариант на PQ если диапазон c разрывом, но в одном столбце.
Изменено: evgeniygeo - 05.04.2024 10:39:33
 
Дмитрий(The_Prist) Щербаков, Прилагаю файлик. Спасибо всем кто пытается помочь!
Изменено: SergeyD - 05.04.2024 13:08:01
 
Если честно - читать и понять происходящее сложно. Адреса ячеек в описании ничего общего с примером не имеют.
Если конечная цель разбить по разделителю - почему не применить Данные -Текст по столбцам?
Если такой вариант тоже не подходит - озвучьте допустимую версию Excel. В новых версиях это сделать можно достаточно просто через функции вроде ТЕКСТДО.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
Я тоже не вполне понимаю, таинство сих тантрических преобразований, но вдруг правильно:
=TRIM(MID(SUBSTITUTE($A20;";";REPT(" ";20));COLUMN(A1)*20-19;20))
 
memo, Вопрос был не про таинство тантрических преобразованний и их смысл.
Вы получили нужный результат, хоть и использовали другие функции. Спасибо!
Вопрос же был про замену последовательности в функции ВЫБОР ссылкой на ячейку с этой последовательностью.
 
Дмитрий(The_Prist) Щербаков,
Да, надо разделить текст по столбцам, но не лазить по меню  и использовать  мастер, а с помощью формулы с функцией ВЫБОР.  
Изменено: SergeyD - 05.04.2024 16:05:21
 
Цитата
SergeyD написал:
а с помощью формулы с функцией ВЫБОР
тогда задача не решаема. В ДВССЫЛ не получится запихнуть несколько областей и тем более не получится это все дело подставить в ВЫБОР.
Даже самый простой вопрос можно превратить в огромную проблему. Достаточно не уметь формулировать вопросы...
 
Дмитрий(The_Prist) Щербаков,
Может быть, есть еще способы разбить текст по столбцам с помощью других формул?
 
SergeyD, добрый день.
Цитата
есть еще способы разбить текст по столбцам с помощью других формул?
Вас по каким-то причинам не устроил вариант ув. memo, вполне удобный и рабочий (для подстрок до 20 символов):
Код
=СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ($A20; ";"; ПОВТОР(" ";20)); СТОЛБЕЦ(A1)*20-19; 20))
Тут индекс подстроки задаётся через СТОЛБЕЦ(A1), что означает 1:
Код
=СЖПРОБЕЛЫ(ПСТР(ПОДСТАВИТЬ($A20; ";"; ПОВТОР(" ";20)); 1 * 20-19; 20))
Такая "сложность" нужна для удобства копирования формулы вправо - получаем СТОЛБЕЦ(B1), СТОЛБЕЦ(C1), ... - т.е., индексы 2, 3, ...
 
andypetr, Меня всё устраивает, хотелось бы ознакомиться с вариантами. Спасибо!
Страницы: 1
Наверх