Используйте формулу для организации столбцов с различными объемами данных. - PullRequest
1 голос
/ 17 февраля 2020

Когда записывается каждый столбец, значения имеют разные размеры:

enter image description here

Я бы хотел, чтобы значения были вытянуты влево, чтобы один Столбец всегда корректно корректируется с остальными:

enter image description here

Есть ли способ сделать это с помощью формулы?

ссылка на электронную таблицу:
https://docs.google.com/spreadsheets/d/1iXqdjs_D-NvyES4LMjpzFEY4uDvbdcMZZY5VUvpmbRQ/edit?usp=sharing

1 Ответ

1 голос
/ 17 февраля 2020

значения, которые нужно перенести влево

=ARRAYFORMULA(SUBSTITUTE(SPLIT(TRANSPOSE(QUERY(TRANSPOSE(IF(A1:D12<>"", 
 SUBSTITUTE(A1:D12, " ", "♦"), )),,999^99)), " "), "♦", " "))

0


при равном распределении:

={FILTER(SUBSTITUTE(TRANSPOSE(SPLIT(QUERY(TRANSPOSE(QUERY(TRANSPOSE(IF(A1:D12<>"", 
  SUBSTITUTE(A1:D12, " ", "♦"), )),,999^99)),,999^99), " ")), "♦", " "), 
  MOD(ROW(INDIRECT("A1:A"&COUNTA(A1:D12)))-1, 4)=0), 
  FILTER(SUBSTITUTE(TRANSPOSE(SPLIT(QUERY(TRANSPOSE(QUERY(TRANSPOSE(IF(A1:D12<>"", 
  SUBSTITUTE(A1:D12, " ", "♦"), )),,999^99)),,999^99), " ")), "♦", " "), 
  MOD(ROW(INDIRECT("A1:A"&COUNTA(A1:D12)))-2, 4)=0), 
  FILTER(SUBSTITUTE(TRANSPOSE(SPLIT(QUERY(TRANSPOSE(QUERY(TRANSPOSE(IF(A1:D12<>"", 
  SUBSTITUTE(A1:D12, " ", "♦"), )),,999^99)),,999^99), " ")), "♦", " "), 
  MOD(ROW(INDIRECT("A1:A"&COUNTA(A1:D12)))-3, 4)=0), 
  FILTER(SUBSTITUTE(TRANSPOSE(SPLIT(QUERY(TRANSPOSE(QUERY(TRANSPOSE(IF(A1:D12<>"", 
  SUBSTITUTE(A1:D12, " ", "♦"), )),,999^99)),,999^99), " ")), "♦", " "), 
  MOD(ROW(INDIRECT("A1:A"&COUNTA(A1:D12)))-4, 4)=0)}

enter image description here

обратите внимание, что =COUNTA(A1:D12)/4 должен быть целым числом, в противном случае вы получите ошибку ARRAY. чтобы избежать ошибки ARRAY, вы можете использовать 1 формулу на столбец. вставьте столбец A и перетащите его до столбца D:

=FILTER(SUBSTITUTE(TRANSPOSE(SPLIT(QUERY(TRANSPOSE(QUERY(TRANSPOSE(IF($A$1:$D$12<>"", 
 SUBSTITUTE($A$1:$D$12, " ", "♦"), )),,999^99)),,999^99), " ")), "♦", " "), 
 MOD(ROW(INDIRECT("A1:A"&COUNTA($A$1:$D$12)))-COLUMN(A1), 4)=0)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...