2015-08-31 2 views
0

Цель 1: Попытка запроса данных на другой вкладке в Google Spreadsheet
Проблема 1: Получение # N/A, когда я указать диапазон от другого листаQUERY() в Google Таблицах

У меня есть прочитайте о задании диапазона на другой вкладке и просмотрите видео на YouTube, но я не могу заставить этот сценарий работать для меня. Я также рассмотрел несколько вопросов здесь, в том числе «Как выполнить функцию запроса в Google Таблицах» (фильтрация данных для переноса данных на другие листы), но не смогла найти решение. В этом image вы увидите, как данные изложены. Как вы можете видеть, я могу заставить запрос работать, если диапазон находится на той же вкладке, что и запрос. Второй я меняю диапазон на другую вкладку, я начинаю получать # N/A, как вы можете видеть here. (Обратите внимание, что данные на разных вкладках находятся в другом диапазоне. Если это имеет значение, сообщите мне.)

Заранее благодарен!

+0

С первого снимка я замечаю несколько разных форматирования в столбце A. Эти 7 форматируются как число (выравнивание по правому краю), а 8 - это номера, отформатированные как текст (выравнивание по левому краю). Это само по себе уже хлопотно для query(), поскольку он знает, как бороться с «смешанными данными». Пожалуйста, подумайте о том, чтобы поделиться примером таблицы, чтобы мы могли лучше выглядеть. – JPV

+0

Hi JPV. Спасибо, что ответили! [Ex sheet] (https://docs.google.com/spreadsheets/d/1Un8lN_5IqFA_fXL8NpXY6DPFB8JiwW6ZjJUHGMLPYFU/edit?usp=sharing) Я сам это заметил, но не был уверен, связано ли это, потому что, когда я отформатировал все число 7 как число, он работал. Как только я изменяю форматирование даже для одного числа 8 в столбце А, это приводит к ошибкам. Я предполагаю, что col B и col C, являющиеся текстом, тоже не помогают? Я не могу отформатировать эти данные как обычный текст, потому что GA выплескивает данные в электронную таблицу, и я не могу контролировать, какой формат он применяет к новым данным. Я надеялся просто запросить данные. – techscolasticus

ответ

0

Попробуйте этот запрос:

=query('High Level Metrics by Device and Medium'!A2:D, "select C, sum(D) where A = '"&A2&"' group by C pivot B ") 

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

=ArrayFormula(query({to_text('High Level Metrics by Device and Medium'!A2:A), 'High Level Metrics by Device and Medium'!B2:D}, "select Col3, sum(Col4) where Col1 = '"&A2&"' group by Col3 pivot Col2 ")) 

В качестве альтернативы для запроса(), вы можете попробовать:

=ArrayFormula(iferror(vlookup($A$2&B$2&{$A$3:$A$5}, {'High Level Metrics by Device and Medium'!$A$2:$A&'High Level Metrics by Device and Medium'!$B$2:$B&'High Level Metrics by Device and Medium'!$C2:$C, 'High Level Metrics by Device and Medium'!$D$2:$D}, 2, 0))) 
  • $ A $ 2 & B $ 2 & {$ A $ 3: $ A $ 5} создает одну строку за строку (A3: A5) из значений A2, B2 и диапазона A3: A5, которая выглядит как «7OrganicDesktop».
  • vlookuprange создается путем объединения столбцов A, B, C листа «Высокий уровень ...» (поэтому из этих трех столбцов создается один «новый» столбец - данные будут выглядеть как пример выше), а второй столбец - это просто диапазон D2: D.
  • , когда найдено совпадение с ВПР возвращает D-столбец

Эта формула может быть втянута вправо, для других значений. Надеюсь, это поможет ?

+0

JPV! Большое спасибо за то, что вы работаете со мной в электронной таблице. Действительно ценю это!!! – techscolasticus

+0

@techscolasticus: добро пожаловать! – JPV

Смежные вопросы