[PHP]スプレッドシートに列方向に対して書き込みを行う

任意の行の複数カラムへの書き込みではなく、任意のカラムの複数行に対して書き込みを行いたかった。
Google_Service_Sheets_ValueRangeインスタンスを作成する時に、引数に渡す値を調整してあげれば出来ることがわかった。

<?php
require __DIR__ . '/vendor/autoload.php';
$key_file = __DIR__ . './auth-key.json';
// スプレッドシートのID
$sheet_id = 'xxxxxxxxxxxxxxxxxxxx';

// アカウント認証インスタンスの生成
$client = new Google_Client();
$client->setAuthConfig($key_file);
$client->setApplicationName('Sheet Api Test');
$scopes = [Google_Service_Sheets::SPREADSHEETS];
$client->setScopes($scopes);

// 書き込みデータ
$values = [
    ['aa'],
    ['bb'],
];
$body = new Google_Service_Sheets_ValueRange([
    'values' => $values,
]);
// 書き込みの実行
$response = $sheet->spreadsheets_values->append(
    $sheet_id,
    'シート1!A1:A5',
    $body,
    ['valueInputOption' => 'USER_ENTERED']
);

上記のように指定することでA1とA2のセルにそれぞれ値が入力される

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

5 × 4 =

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください