Как обновить значения электронной таблицы из переменной? - PullRequest
0 голосов
/ 15 июня 2019

Я создал функцию с тремя параметрами (клиент, значение, которое я ищу в таблице, значение, новое значение для обновления), но пока не знаю, как не обновить ячейку с помощьюопределенное значение.

До сих пор мне удалось найти значение в таблице, но я не могу обновить последнюю ячейку значением в параметре функции.Как это сделать?

async function modif(client, id1, id2)
{   
    const gsapi = google.sheets({version:'v4',auth: client });

    for (i = 0; i < 50; i++) 
    {

        const opt1 = {spreadsheetId: 'XXX', range: 'Sheet1!A' + (3+i)};
        let data1 = await gsapi.spreadsheets.values.get(opt1);

        if (parseInt(id1) === parseInt(data1.data.values))
        {                                   
            const opt2 = {
            spreadsheetId: 'xxx', 
            range: 'Sheet1!B' + (3+i), 
            valueInputOption: 'USER_ENTERED', 
            resource:{values : id2}
            };

            let res = await gsapi.spreadsheets.values.update(opt2);
        console.log("modifications OK");
            return;
        }
    }
}

У меня должна быть обновленная ячейка, однако вместо этого я получаю сообщение об ошибке: «Недопустимое значение в data.values».Ошибка в строковом ресурсе: {values: id2}

Кто-нибудь знает, как решить эту маленькую ошибку (я полагаю), я потратил 2 часа на эту ошибку вчера, не имея возможности ее решить: (

Заранее большое спасибо за помощь,

1 Ответ

0 голосов
/ 15 июня 2019

Наконец-то я выяснил, в чем была проблема ... Когда я посмотрел документацию здесь: https://developers.google.com/sheets/api/reference/rest/v4/spreadsheets.values, Я обнаружил, что параметр "values" - это массив массивов ...

КакВ результате мне нужно было изменить синтаксис только на: resource:{values : id2} на: resource:{values : [[id2]]}

Cheers,

...