1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

[Google Sheets API] セルにHTML、CSVデータを貼り付ける

Last updated at Posted at 2024-03-02

Google Sheets API v4(Java)を使用して、
スプレットシートのセルにHTMLデータ、CSVデータを貼り付ける方法
についてご紹介します。

APIを利用する環境の準備から始める場合や、コードを実行する際は、
⧉[Google Sheets API] Google Sheets API v4をJavaで操作する
を参照ください。

例:requests.add(moveDimension(sheetId)); //実行したいリクエストのMethodを指定

その他のGoogle Sheets APIは、下記の記事を参照ください。
⧉[Google Sheets API] JavaでスプレットシートのメニューとAPIを関連づけてみた

No 目次
1 HTMLを貼り付ける
2 CSVを貼り付ける

1. HTMLを貼り付ける

セルにHTMLデータを貼り付けることができます。

サンプル コード
HTMLのテーブルを貼り付けてみます。

public Request pasteData(Integer sheetId) {
    Request request = new Request();

    GridCoordinate range = new GridCoordinate();
    range.setSheetId(sheetId);    //シートID
    range.setRowIndex(0);         //開始行(0スタート)
    range.setColumnIndex(0);      //開始列(0スタート))
    
    PasteDataRequest r = new PasteDataRequest();
    r.setCoordinate(range);      //データの挿入を開始する座標。
    r.setData(                   //HTMLデータ
      "<table>"
      + "<thead>"
        + "<tr>"
         + "<th colspan=\"2\" style=\"background-color:red;\">タイトル1</th>"
         + "<th style=\"background-color:blue;\">タイトル2</th>"
        + "</tr>"
      + "</thead>"
      + "<tbody>"
        + "<tr>"
         + "<td>データ1</td>"
         + "<td>データ2</td>"
         + "<td>データ3</td>"
        + "</tr>"
     + "</tbody>"
    + "</table>");
    r.setHtml(true);              //データが HTMLの場合は true

    request.setPasteData(r);
    return request;
}

実行結果
HTMLデータが貼り付けられました。styleや行の結合も反映されています。

2. CSVを貼り付ける

CSVデータをセルに貼り付けます。
区切り文字(CSVの場合は「,」)を指定するとセルを分けて貼り付けてくれます。

サンプル コード

public static Request pasteData(Integer sheetId) {
    Request request = new Request();

    GridCoordinate range = new GridCoordinate();
    range.setSheetId(sheetId);      //シートID
    range.setRowIndex(0);           //開始行(0スタート)
    range.setColumnIndex(0);        //開始列(0スタート))
    
    PasteDataRequest r = new PasteDataRequest();
    r.setCoordinate(range);         //データの挿入を開始する座標。
    r.setData("A,B,C,D\n1,2,3,4");  //挿入するデータ。
    r.setDelimiter(",");            //データ内の区切り文字。
    
    request.setPasteData(r);
    return request;
}

実行結果
カンマ区切りのデータが貼り付けられました。
ちゃんと、カンマの位置で区切られてセルに貼り付けられています。


おしまい。。
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?