-3

Прежде всего, спасибо за вашу помощь. У меня проблема с использованием текста в формулах. Я работаю над огромным набором данных о запасах за несколько лет. Акции не сгруппированы правильно. Я использовал формулу соответствия индекса, чтобы правильно сгруппировать акции с указанием даты и доходности. Однако это заняло много времени для моего файла, потому что для каждой ячейки он просматривает весь ряд и столбцы.

Я пытаюсь сократить время расчета, создав меньший диапазон путем определения местоположения первого запаса в моем образце, используя формулу соответствия адреса. Это дает мне местоположение ячейки (скажем, это F5), и это дает мне это местоположение в ячейке C5. Итак, теперь у нас есть ячейка C5, в которой есть строка F5. Я знаю окончание диапазона, потому что местоположение ячейки следующего запаса является одновременно концом диапазона предыдущего запаса (в алфавитном порядке или отклоняется)

Здесь проблема. Я хочу использовать строку в C5 (которая является F5) в качестве начала моего диапазона в формуле и следующей ячейке, скажем, у D5 есть конец диапазона (например, F10). Однако, что бы я ни делал, строка не включена в мою формулу. Смотрите = IFERROR (INDEX («Вход WRDS»!$ O $ 2:$ O $ 1048576; MATCH (Лист1!$ A11 & Лист1!C $ 4; «Вход WRDS»!$ B $ 2:$ B $ 1048576 & «Вход WRDS»!$ F $ 2:$ F $ 1048576; 0)); ""). Я хочу изменить диапазоны строк в ячейках, и когда я копирую его вправо, он использует строку в ячейке D5

Надеюсь это понятнее

Кто-нибудь может мне помочь? Или кто-нибудь знает лучший способ?

2 ответа2

2

Вам нужно использовать косвенную формулу

=indirect(C5 & ":" & D5)

даст вам диапазон F5:F10

=sum(indirect(C5 & ":" & D5))

суммирует F5:F10. Предполагая, что ячейка C5 имеет значение F5, а ячейка D5 имеет значение F10. Это может быть использовано внутри любой формулы.

0

Хорошо, это только через год, так что, может быть, это поможет в качестве резюме :) Ваше сообщение поможет мне решить мою проблему, которая также использует ссылочную ячейку для объединения и сопоставления значений в диапазоне на указанном листе ... надеюсь, это поможет

$ u $ 8 содержит текст => 'Custom Import', INDIRECT($ U $ 8 & "!S:S ") имеет результат => 'Custom Import'!S:S, что, в свою очередь, является целевым листом и диапазоном, которые мне нужны для функции MATCH.

=IFERROR(IF(Q10 <>"",IF(MATCH(Q10,INDIRECT($U$8&"!S:S"),0)>0,INDEX(INDIRECT($U$8&"!T:T"),(MATCH(Q10,INDIRECT($U$8&"!S:S"),0)),FALSE),""),""),"")

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .