Проблема с копированием формулы во весь столбец после нахождения непустых ячеек в листе ответов Google Form - PullRequest
1 голос
/ 24 октября 2019

У меня есть Google Sheet, который содержит ответы из формы Google. На листе есть 6 столбцов, ответы на которые есть только в одном из них (в зависимости от ответа, который они выбирают в предыдущем вопросе, он переносится на одну из 6 страниц, все шесть страниц относятся к одному и тому же). Я ссылаюсь на эти данные на другом листе (в том же файле) с формулой, которая находит непустую ячейку и возвращает ее. Проблема в том, что мне нужно скопировать эту формулу вниз для всего столбца, но каждый раз, когда появляется новая запись, она заставляет формулу ссылаться на следующую ячейку вниз (поэтому, если она смотрит на C2: N2, она сдвигает ее до C3: Н3).

Я пытался использовать Arrayformula с комбинацией If / Isblank и комбинацией Index / Match, но ни одна из них не сработала. Вот оба из них: Метод массива:

=arrayformula(IF(ISBLANK('Form Responses 1'!C2),IF(ISBLANK('Form Responses 1'!D2),IF(ISBLANK('Form Responses 1'!E2),IF(ISBLANK('Form Responses 1'!F2),'Form Responses 1'!G2),'Form Responses 1'!F2),'Form Responses 1'!E2),'Form Responses 1'!D2),'Form Responses 1'!C2))

Метод индекса / соответствия:

=INDEX('Form Responses 1'C2:G2,MATCH(TRUE,INDEX(('Form Responses 1'C2:G2<>0),0),0))

Проблема с первым методом заключается в том, что при попытке изменить последнюю половину на 'Form Responses 1'!C2:C, чтобы заполнить весь столбец, он будет использовать только тот столбец, который был выбран в самой записи для всех остальных записей (поэтому, если значение, выбранное в первой строке, относится к столбцу D, оно будет толькоскопируйте из столбца D остальные, независимо от того, пустые они или нет). Проблема со вторым методом заключается в том, что он делает это только для одной строки за раз, и все еще имеет проблему с записями формы, меняющими формулу. Я обнаружил подобные случаи в Интернете, но ни один из них точно не решил мою проблему.

1 Ответ

0 голосов
/ 24 октября 2019

вставьте эту формулу в первый ряд:

={""; ARRAYFORMULA(TRIM(TRANSPOSE(QUERY(TRANSPOSE(C2:N);;999^99))))}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...