Google Sheets API v4(Java)を使用して、
スプレットシートにセル内のテキストを列に分割させる方法
についてご紹介します。
メニュー:「データ」 ⇨ 「テキストを列に分割」
で実行できる内容と同じです。
APIを利用する環境の準備から始める場合や、コードを実行する際は、
⧉[Google Sheets API] Google Sheets API v4をJavaで操作する
を参照ください。
例:requests.add(moveDimension(sheetId)); //実行したいリクエストのMethodを指定
その他のGoogle Sheets APIは、下記の記事を参照ください。
⧉[Google Sheets API] JavaでスプレットシートのメニューとAPIを関連づけてみた
テキストを列に分割させる
セルを指定してテキストを列に分割させます。
区切り文字はTextToColumnsRequestクラスのsetDelimiterTypeメソッドで指定します。
CUSTOMの場合は、setDelimiterメソッドで区切り文字を指定します。
type | 区切り文字 |
---|---|
COMMA | カンマ 「,」 |
SEMICOLON | セミコロン 「;」 |
PERIOD | ピリオド 「.」 |
SPACE | スペース 「 」 |
CUSTOM | カスタム |
AUTODETECT | 自動判定 |
範囲の設定では1列のみを指定してください。
複数列を指定するとエラーになります。
サンプル コード
カンマ区切りのデータを列に分割させます。
public Request textToColumns(Integer sheetId) {
Request request = new Request();
//範囲の設定
GridRange range = new GridRange();
range.setSheetId(sheetId); //シートID
range.setStartRowIndex(0); //開始行(0スタート)
range.setEndRowIndex(3); //終了行(1スタート)
range.setStartColumnIndex(0); //開始列(0スタート))
range.setEndColumnIndex(1); //終了列(1スタート)
TextToColumnsRequest r = new TextToColumnsRequest();
r.setDelimiterType("COMMA"); //区切り文字のタイプ
//r.setDelimiter("¥"); //カスタムの区切り文字(typeがCUSTOMの場合のみ)
r.setSource(range);
request.setTextToColumns(r);
return request;
}
おしまい。。