Как связать ячейку в таблицах Google с ячейкой в ​​другом документе?

У меня есть ежемесячная электронная таблица, которая опирается на цифры за предыдущий месяц. Я хотел бы импортировать эти значения динамически, а не разрезать и вставлять их. Это возможно? Как это сделать?

145 голосов | спросил Jeff Yates 1 J000000Thursday10 2010, 17:47:20

6 ответов


150

IMPORTRANGE() - это функция, которую вы хотите.

Из списка функций электронных таблиц Google

  

Google Spreadsheets позволяет вам ссылаться   другая рабочая книга в электронной таблице   которые вы редактируете, используя   функция ImportRange. ImportRange   позволяет вытащить одно или несколько значений ячейки   из одной таблицы в другую. к   создайте свои собственные формулы ImportRange,   введите = importRange (таблица электронных таблиц,   ассортимент). Для языков, где запятая   используется для десятичного разделения, используйте   точка с запятой вместо запятой   отдельные аргументы в вашей формуле.

     

Таблица электронных таблиц - это STRING, которая   ключевое значение из таблицы   URL.

     

Диапазон - это STRING, представляющий   диапазон ячеек, которые вы хотите импортировать,   необязательно, включая имя листа   (по умолчанию - первый лист). Ты можешь   также используйте название диапазона, если хотите.

     

Учитывая, что два аргумента   STRING, вам необходимо вложить их в   цитаты или ссылки на ячейки, которые имеют   строковые значения в них.

     

Например:

     

= importrange ("abcd123abcd123", "sheet1! A1: C10") "abcd123abcd123"   значение в атрибуте «key =» на   URL целевой таблицы и   «sheet1! A1: C10» - это диапазон, который равен   желательно импортировать.

     

= importrange (A1, B1) Ячейка A1 содержит строку ABCD123ABCD123 и ячейку B1   содержит лист1! A1: C10

     

Примечание. Чтобы использовать ImportRange, вы   необходимо добавить в качестве зрителя или   соавтором таблицы из   который ImportRange извлекает данные.   В противном случае вы получите эту ошибку:   Ошибка #REF!   ключ электронной таблицы, название листа или ячейку   диапазон не найден. "

«ключ» - это, конечно, строка в URL-адресе таблицы, которая соответствует параметру key=.

Я просто проверил это, создав две таблицы. В ячейке A1 первого я поставил строку. В ячейке A1 второго я положил =importRange("tgR2P4UTz_KT0Lc270Ijb_A","A1"), и он отобразил строку из первой электронной таблицы. (Ваш ключ, очевидно, будет другим.)

(Формат функции может зависеть от вашего языка. Во Франции формула недействительна с запятой, поэтому вам нужно заменить ее на запятую: =importRange("tgR2P4UTz_KT0Lc270Ijb_A";"A1"))

ПРИМЕЧАНИЕ:

  1. В настоящее время Google устанавливает жесткий предел 50 «справочных формул для перекрестных книг» для каждой электронной таблицы. Источник: Лимиты Google Документов, Таблиц и слайдов . (h /t JJ Rohrer )

  2. «Новая» таблица Google (в скором времени станет стандартом) удаляет 50 предел 50 «ссылочных формул для перекрестных книг» ( Служба поддержки Google ) (h /t Джейкоб Ян Туинстра )

  3. В «новых» Google Таблицах вы также используете весь URL в качестве ключа ( Служба поддержки Google ) (h /t Punchlinern )

ответил ale 1 J000000Thursday10 2010, 20:06:04
26

FYI, если вы хотите ссылаться на другой лист внутри этой другой таблицы, имя листа НЕ следует повторять:

использовать

=importRange("tgR2P4UTz_KT0Lc270Ijb_A","Sheet Name!A1:A10")

вместо

=importRange("tgR2P4UTz_KT0Lc270Ijb_A","'Sheet Name'!A1:A10")

ответил 0blivious 3 Mayam11 2011, 11:25:40
8

В новом интерфейсе вы должны просто ввести = в ячейку, а затем просто перейти на другой лист и выбрать нужную ячейку. Если вы хотите сделать это вручную или используете старый интерфейс, вы можете просто сделать =Sheet1!A1, где Sheet1 - это имя листа, а A1 - ячейка на этом листе, о которой вы заботитесь. Это идентично Microsoft Excel.

ответил Benjamin Pollack 1 J000000Thursday10 2010, 18:05:56
3

Я нашел этот синтаксис, используя Insert -> Определить новый диапазон ДИАПАЗОН ДЛЯ СПИСКА ДРУГИХ РАСПРОСТРАНЕНИЙ:

  

Целый столбец: «Таблица с пробелами в имени»! A: A

     

Столб целых B: «Таблица с пробелами в названии»! B: B

и др.

Затем вы можете использовать его как:

  

= COUNTIF ('Первая страница'! B: B, "valueToMatch")

ответил Tom Roggero 14 WedEurope/Moscow2011-12-14T22:46:11+04:00Europe/Moscow12bEurope/MoscowWed, 14 Dec 2011 22:46:11 +0400 2011, 22:46:11
1

вот как я это сделал (переопределяет 'importrange ()'):

  • откройте редактор сценариев ("tools" -> "scripts" -> "editor editor")
  • предоставляет такую ​​функцию (без каких-либо проверок это должно быть улучшено, но вы получите общую идею):
функция REMOTEDATA (inKey, inRange) {

  var outData;
  var ss = SpreadsheetApp.openById (inKey);

  если (ss) {
     outData = ss.getRange (inRange) .getValues ​​();
  }

  return outData;
}
  • используйте эту формулу, как это в вашей таблице:
= SUM (REMOTEDATA («ключ», «SheetName! A1: A10»))

«ключ» - это ключ документа, вы найдете его в параметре «key = xyz» URL-адреса документа.

документация для служб электронных таблиц предоставляет дополнительную информацию о тема.

ответил akira 1 J000000Thursday10 2010, 20:01:25
-2

Я сделал это очень просто, используя Query, например, у меня есть 2 листа ABC и XYZ, и я хочу импортировать диапазон от A1 до C30 из Abc в XYZ, щелкните ячейку, в которой вы хотите, чтобы диапазон отображался и записывал это

=QUERY(ABC!A1:C30)

Примечание. Если ваше имя листа имеет пробелы, то, конечно, вы пишете это:

=QUERY('ABC 1'!A1:C30)

ответил Qamar 23 MaramFri, 23 Mar 2012 08:53:26 +04002012-03-23T08:53:26+04:0008 2012, 08:53:26

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132