Страницы: 1
RSS
диагональ данных превратить в столбец
 
друзья, прошу помочь  
есть таблица данных из нее нужно сделать другую таблицу вытащив данные по диагоналям  
к примеру в новой таблице ячейка A1 содержит данные из ячейки A1 старой таблицы, ячейка A2=B2, A3=C4 и т.д.
 
=индекс(диапазон старой таблицы;строка();строка())  
Если таки не в a1, то нужны конструкции вида строка()-строка(ссылка на закрепленную $ ячейку)
 
спасибо!  
первое решение позволило преобразовать вернюю часть первой таблицы (от диагонали вверх). При протягивании формулы влево (чтобы захватить нижнюю (от диагонали)часть таблицы дает #ССЫЛКА!  
второе решение позволило перевсти только саму диагональ, при протягивании влево и вправо значения не меняются.  
Помогите с универсальной формулой для преобразования всего первичного массива по диагоналям (по сути повернуть квадратный массив на ребро :o) получится ромб)
 
А Вы помогите нам. Примером. Маленьким. Без лишней информации. С "хочу вот так".
 
Оба решения, по сути, универсальные.  
Просто нужно правильно закрепить ячейки(поставить $) и сделать правильные ссылки, правильно потанцевав с бубном над строка()-строка() и иже с ним.  
 
Если вы сами не можете это сделать, выложите файл-пример и вам скорее всего сделают готовое решение.
 
хочу вот так :o))
 
совсем грубо)
 
ВНапример, в В22 формула:  
=ЕСЛИ(СЧЁТ($B$3:$B$17)-СТРОКА(1:1)+1>СТОЛБЕЦ(A:A);"";ИНДЕКС($B$3:$AE$17;СТРОКА(1:1);СЧЁТ($A22:A22)+1))  
Копировать на весь квадрат до AD36.  
Борьба с ошибкой в конце строки чисел - удлинение исходного диапазона:  
ИНДЕКС($B$3:$AE$17;...
 
Не дописал. Вместо ошибки выдает нулевые значения. Ошибку можно погасить дополнительной проверкой СЧЕТ значений слева.
 
Вот так:  
=ЕСЛИ((СЧЁТ($B$3:$B$17)-СТРОКА(1:1)+1>СТОЛБЕЦ(A:A))+(СЧЁТ($A22:A22)=СЧЁТ($B$3:$P$3));"";ИНДЕКС($B$3:$P$17;СТРОКА(1:1);СЧЁТ($A22:A22)+1))
 
Все предложенные решения дали нужный результат! Спасибо!
Страницы: 1
Читают тему
Наверх