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;
}
実行結果
カンマ区切りのデータが貼り付けられました。
ちゃんと、カンマの位置で区切られてセルに貼り付けられています。
おしまい。。