API Google Sheets позволяет считывать значения из ячеек, диапазонов, наборов диапазонов и целых листов. Примеры на этой странице иллюстрируют некоторые распространенные операции чтения с использованием ресурса spreadsheets.values . Вы также можете считывать значения ячеек с помощью метода spreadsheets.get , но обычно проще использовать spreadsheets.values.get или spreadsheets.values.batchGet .
Эти примеры представлены в виде HTTP-запросов, чтобы обеспечить языковую нейтральность. Чтобы узнать, как реализовать чтение на разных языках с помощью клиентских библиотек Google API, см. раздел «Чтение и запись значений ячеек» .
В этих примерах заполнитель SPREADSHEET_ID указывает, где следует указывать идентификатор электронной таблицы , который можно узнать из URL-адреса электронной таблицы. Диапазоны для чтения указываются с использованием обозначения A1 в URL-адресе запроса. Пример диапазона: Sheet1!A1:D5.
Исходные данные
В этих примерах предположим, что считываемая электронная таблица содержит следующие исходные данные на первом листе ("Sheet1"). Строки в первой строке — это метки для отдельных столбцов. Примеры чтения данных с других листов электронной таблицы см. в обозначении A1 .
| А | Б | С | Д | |
| 1 | Элемент | Расходы | В наличии | Дата отгрузки |
| 2 | Колесо | 20,50 долларов | 4 | 01.03.2016 |
| 3 | Дверь | 15 долларов | 2 | 15.03.2016 |
| 4 | Двигатель | 100 долларов | 1 | 20.03.2016 |
| 5 | Итоговые суммы | 135,5 долларов | 7 | 20.03.2016 |
Прочитать один диапазон
Приведенный ниже пример кода spreadsheets.values.get показывает, как считать значения из диапазона Sheet1!A1:D5 и вернуть их в ответе. Пустые строки и столбцы в конце строки опущены.
Здесь представлен протокол запроса.
GET https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID/values/Sheet1!A1:D5
В ответе содержится объект ValueRange , описывающий диапазон значений. Поле majorDimension указывает, что массивы представляют собой списки значений, организованные по строкам.
{
"range": "Sheet1!A1:D5",
"majorDimension": "ROWS",
"values": [
["Item", "Cost", "Stocked", "Ship Date"],
["Wheel", "$20.50", "4", "3/1/2016"],
["Door", "$15", "2", "3/15/2016"],
["Engine", "$100", "1", "30/20/2016"],
["Totals", "$135.5", "7", "3/20/2016"]
],
}Прочитайте данные из одного диапазона, сгруппированные по столбцам.
Приведенный ниже пример кода spreadsheets.values.get показывает, как считать значения из диапазона Sheet1!A1:D3 и вернуть их в ответе, но сгруппированные по столбцам. Пустые строки и столбцы в конце строки опущены.
Здесь представлен протокол запроса.
GET https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID/values/Sheet1!A1:D3?majorDimension=COLUMNS
В ответе содержится объект ValueRange , описывающий диапазон значений. Поле majorDimension указывает, что массивы представляют собой списки значений, организованные по столбцам.
{
"range": "Sheet1!A1:D3",
"majorDimension": "COLUMNS",
"values": [
["Item", "Wheel", "Door"],
["Cost", "$20.50", "$15"],
["Stocked", "4", "2"],
["Ship Date", "3/1/2016", "3/15/2016"]
],
}Считывание одного диапазона с параметрами отображения.
Приведенный ниже пример кода spreadsheets.values.get показывает, как считывать значения из диапазона Sheet1!A1:D5 и возвращать их в ответе, но использует параметры рендеринга для управления способом возврата этой информации. Параметр ValueRenderOption параметра FORMULA указывает, что вместо вычисленного значения должны возвращаться формулы, а параметр DateTimeRenderOption параметра SERIAL_NUMBER указывает, что даты должны возвращаться в виде чисел. Возможны и другие настройки. Пустые строки и столбцы в конце строки опускаются.
Здесь представлен протокол запроса.
GET https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID/values/Sheet1!A1:D5?
valueRenderOption=FORMULA&dateTimeRenderOption=SERIAL_NUMBER В ответе содержится объект ValueRange , описывающий диапазон значений. Поле majorDimension указывает, что массивы представляют собой списки значений, организованные по строкам.
{
"range": "Sheet1!A1:D5",
"majorDimension": "ROWS",
"values": [
["Item", "Cost", "Stocked", "Ship Date"],
["Wheel", "$20.50", "4", "42430"],
["Door", "$15", "2", "42444"],
["Engine", "$100", "1", "42449"],
["Totals", "=SUM(B2:B4)", "=SUM(C2:C4)", "=MAX(D2:D4)"]
],
}Прочитать несколько диапазонов
Приведенный ниже пример кода spreadsheets.values.batchGet демонстрирует, как считывать значения из диапазонов Sheet1!B:B и Sheet1!D:D и возвращать их в ответе. Параметр ValueRenderOption со значением UNFORMATTED_VALUE указывает, что значения вычисляются, но не форматируются в ответе. Пустые строки и столбцы в конце ответа опускаются.
Здесь представлен протокол запроса.
GET https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID/values:batchGet?
ranges=Sheet1!B:B&ranges=Sheet1!D:D&valueRenderOption=UNFORMATTED_VALUE&majorDimension=COLUMNS В ответ на этот вызов метода выводится объект с идентификатором электронной таблицы и массив объектов ValueRange , соответствующих каждому запрошенному диапазону, перечисленных в порядке их запроса. Поле majorDimension указывает, что массивы представляют собой списки значений, организованные по столбцам. Например:
{
"spreadsheetId": SPREADSHEET_ID,
"valueRanges": [
{
"range": "Sheet1!B1:B1000",
"majorDimension": "COLUMNS",
"values": [
["Cost",20.5,15,100,135.5]
]
},
{
"range": "Sheet1!D1:D1000",
"majorDimension": "COLUMNS",
"values": [
["Ship Date",42430,42444,42449,42449]
]s
}
]
}Считывайте данные из нескольких диапазонов на нескольких листах.
Приведенный ниже пример кода spreadsheets.values.batchGet демонстрирует, как считывать значения из диапазонов на листах Sheet1!A1:D5, Products!D1:D100 и Sales!E4:F6 и возвращать их в ответе. Параметр ValueRenderOption со значением UNFORMATTED_VALUE указывает, что значения вычисляются, но не форматируются в ответе. Пустые строки и столбцы в конце ответа опускаются.
Здесь представлен протокол запроса.
GET https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID/values:batchGet?
ranges=Sheet1!A1:D5&ranges=Products!D1:D100&ranges=Sales!E4:F6&valueRenderOption=UNFORMATTED_VALUE&majorDimension=COLUMNS В ответ на этот вызов метода выводится объект с идентификатором электронной таблицы и массив объектов ValueRange , соответствующих каждому запрошенному диапазону, перечисленных в порядке их запроса. Поле majorDimension указывает, что массивы представляют собой списки значений, организованные по столбцам. Например:
{
"spreadsheetId": SPREADSHEET_ID,
"valueRanges": [
{
"range": "Sheet1!A1:D5",
"majorDimension": "COLUMNS",
"values": [
[...],
[...]
]
},
{
"range": "Products!D1:D100",
"majorDimension": "COLUMNS",
"values": [
[...]
]
},
{
"range": "Sales!E4:F6",
"majorDimension": "COLUMNS",
"values": [
[...],
[...]
]
}
]
}