Google Apps Script (GAS) でこのセル範囲のセルの水平方向・垂直方向のテキスト位置を取得・設定する方法を説明します。
Rangeクラスのメソッドを利用した手順について説明します。
Google Apps Scriptの基本的な使い方については下記をご覧ください。
GASによるスプレッドシート操作の概要
GASでスプレッドシートを操作するための「SpreadSheetサービス」は、主に下記のクラスで構成されています。
クラス | 説明 |
---|---|
SpreadSheetApp | SpreadSheetサービスの親クラス |
Spreadsheet | スプレッドシートを操作するクラス |
Sheet | シートを操作するクラス |
Range | セル範囲を操作するクラス |
それぞれ下記のような位置付けになります。

「SpreadSheetApp」→「SpreadSheet」→「Sheet」→「Range」という順の階層構造になっています。操作対象に応じて、下の階層にたどってオブジェクトを取得して利用します。
このページでは、上記の中のRangeクラスの下記のメソッドについて説明します。
メソッド | 戻り値 | 説明 |
---|---|---|
getHorizontalAlignment() | String | このセル範囲の左上セルの水平方向のテキスト位置を取得する |
getHorizontalAlignments() | String[][] | このセル範囲のセルの水平方向のテキスト位置を配列で一括取得する |
setHorizontalAlignment(alignment) | Range | このセル範囲のセルの水平方向のテキスト位置を一括設定する |
setHorizontalAlignments(alignments) | Range | このセル範囲のセルの水平方向のテキスト位置を配列で一括設定する |
getVerticalAlignment() | String | このセル範囲の左上セルの垂直方向のテキスト位置を取得する |
getVerticalAlignments() | String[][] | このセル範囲のセルの垂直方向のテキスト位置を配列で一括取得する |
setVerticalAlignment(alignment) | Range | このセル範囲のセルの垂直方向のテキスト位置を一括設定する |
setVerticalAlignments(alignments) | Range | このセル範囲のセルの垂直方向のテキスト位置を配列で一括設定する |
このセル範囲のセルの水平方向のテキスト位置を取得・設定する
このセル範囲をセルの水平方向のテキスト位置を取得・設定するメソッドを説明します。
このセル範囲の左上セルの水平方向のテキスト位置を取得する:getHorizontalAlignment()
このセル範囲の左上のセルの水平方向のテキスト位置を取得する方法です。
対象のセルの水平方向のテキスト位置の設定に応じて、下記の戻り値になります。
水平方向のテキスト位置 | 戻り値 |
---|---|
未設定(デフォルト)で空白セル | general |
未設定(デフォルト)で左寄せ | general-left |
左寄せ | left |
中央 | center |
右寄せ | right |
下記のように実行します。
1 2 3 4 5 6 |
function myFunction() { const testSpreadSheet = SpreadsheetApp.getActiveSpreadsheet(); const testSheet = testSpreadSheet.getSheetByName("シート1"); const testRange = testSheet.getRange("B2:C3"); console.log(testRange.getHorizontalAlignment()); } |
下記のような実行結果になります。左上セルの水平方向のテキスト位置を取得できます。
1 |
center |
このセル範囲のセルの水平方向のテキスト位置を配列で一括取得する:getHorizontalAlignments()
このセル範囲のセルの水平方向のテキスト位置を配列で一括取得する方法です。
対象のセルの水平方向のテキスト位置の設定に応じて、下記の戻り値になります。
水平方向のテキスト位置 | 戻り値 |
---|---|
未設定(デフォルト)で空白セル | general |
未設定(デフォルト)で左寄せ | general-left |
左寄せ | left |
中央 | center |
右寄せ | right |
下記のように実行します。
1 2 3 4 5 6 |
function myFunction() { const testSpreadSheet = SpreadsheetApp.getActiveSpreadsheet(); const testSheet = testSpreadSheet.getSheetByName("シート1"); const testRange = testSheet.getRange("B2:C3"); console.log(testRange.getHorizontalAlignments()); } |
下記のような実行結果になります。すべてのセルの水平方向のテキスト位置を配列で取得できます。
1 |
[ [ 'center', 'left' ], [ 'right', 'general-left' ] ] |
このセル範囲のセルの水平方向のテキスト位置を一括設定する:setHorizontalAlignment(alignment)
このセル範囲のセルの水平方向のテキスト位置を一括設定する方法です。
引数には、下記のいずれかの設定を使用します。
設定 | 水平方向のテキスト位置 |
---|---|
normal or null値 | 未設定(デフォルト) |
left | 左寄せ |
center | 中央 |
right | 右寄せ |
下記のように実行します。
1 2 3 4 5 6 |
function myFunction() { const testSpreadSheet = SpreadsheetApp.getActiveSpreadsheet(); const testSheet = testSpreadSheet.getSheetByName("シート1"); const testRange = testSheet.getRange("B2:C3"); testRange.setHorizontalAlignment("right"); } |
下記のファイルで実行してみます。

下記のような実行結果になります。セルの水平方向のテキスト位置を指定した値で一括設定できます。

このセル範囲のセルの水平方向のテキスト位置を配列で一括設定する:setHorizontalAlignments(alignments)
このセル範囲のセルの水平方向のテキスト位置を配列で一括設定する方法です。セル毎に異なる設定を指定したい場合は、このメソッドを利用します。
引数には、下記のいずれかの設定を使用します。
設定 | 水平方向のテキスト位置 |
---|---|
normal or null値 | 未設定(デフォルト) |
left | 左寄せ |
center | 中央 |
right | 右寄せ |
下記のように実行します。
1 2 3 4 5 6 |
function myFunction() { const testSpreadSheet = SpreadsheetApp.getActiveSpreadsheet(); const testSheet = testSpreadSheet.getSheetByName("シート1"); const testRange = testSheet.getRange("B2:C3"); testRange.setHorizontalAlignments([["right", "left"], ["center", null]]); } |
下記のファイルで実行してみます。

下記のような実行結果になります。セル毎に異なる水平方向のテキスト位置を一括設定できます。

このセル範囲のセルの垂直方向のテキスト位置を取得・設定する
このセル範囲をセルの垂直方向のテキスト位置を取得・設定するメソッドを説明します。
このセル範囲の左上セルの垂直方向のテキスト位置を取得する:getVerticalAlignment()
このセル範囲の左上のセルの垂直方向のテキスト位置を取得する方法です。
対象のセルの垂直方向のテキスト位置の設定に応じて、下記の戻り値になります。
垂直方向のテキスト位置 | 戻り値 |
---|---|
未設定(デフォルト) | bottom |
上 | top |
中央 | middle |
下 | bottom |
下記のように実行します。
1 2 3 4 5 6 |
function myFunction() { const testSpreadSheet = SpreadsheetApp.getActiveSpreadsheet(); const testSheet = testSpreadSheet.getSheetByName("シート1"); const testRange = testSheet.getRange("B2:C3"); console.log(testRange.getVerticalAlignment()); } |
下記のような実行結果になります。左上セルの垂直方向のテキスト位置を取得できます。
1 |
middle |
このセル範囲のセルの垂直方向のテキスト位置を配列で一括取得する:getVerticalAlignments()
このセル範囲のセルの垂直方向のテキスト位置を配列で一括取得する方法です。
対象のセルの垂直方向のテキスト位置の設定に応じて、下記の戻り値になります。
垂直方向のテキスト位置 | 戻り値 |
---|---|
未設定(デフォルト) | bottom |
上 | top |
中央 | middle |
下 | bottom |
下記のように実行します。
1 2 3 4 5 6 |
function myFunction() { const testSpreadSheet = SpreadsheetApp.getActiveSpreadsheet(); const testSheet = testSpreadSheet.getSheetByName("シート1"); const testRange = testSheet.getRange("B2:C3"); console.log(testRange.getVerticalAlignments()); } |
下記のような実行結果になります。すべてのセルの垂直方向のテキスト位置を配列で取得できます。
1 |
[ [ 'top', 'middle' ], [ 'bottom', 'bottom' ] ] |
このセル範囲のセルの垂直方向のテキスト位置を一括設定する:setVerticalAlignment(alignment)
このセル範囲のセルの垂直方向のテキスト位置を一括設定する方法です。
引数には、下記のいずれかの設定を使用します。
設定 | 垂直方向のテキスト位置 |
---|---|
null値 | 下 |
top | 上 |
middle | 中央 |
bottom | 下 |
下記のように実行します。
1 2 3 4 5 6 |
function myFunction() { const testSpreadSheet = SpreadsheetApp.getActiveSpreadsheet(); const testSheet = testSpreadSheet.getSheetByName("シート1"); const testRange = testSheet.getRange("B2:C3"); testRange.setVerticalAlignment("top"); } |
下記のファイルで実行してみます。

下記のような実行結果になります。セルの垂直方向のテキスト位置を指定した値で一括設定できます。

このセル範囲のセルの垂直方向のテキスト位置を配列で一括設定する:setVerticalAlignments(alignments)
このセル範囲のセルの垂直方向のテキスト位置を配列で一括設定する方法です。セル毎に異なる設定を指定したい場合は、このメソッドを利用します。
引数には、下記のいずれかの設定を使用します。
設定 | 垂直方向のテキスト位置 |
---|---|
null値 | 下 |
top | 上 |
middle | 中央 |
bottom | 下 |
下記のように実行します。
1 2 3 4 5 6 |
function myFunction() { const testSpreadSheet = SpreadsheetApp.getActiveSpreadsheet(); const testSheet = testSpreadSheet.getSheetByName("シート1"); const testRange = testSheet.getRange("B2:C3"); testRange.setVerticalAlignments([["top", "middle"], ["bottom", null]]); } |
下記のファイルで実行してみます。

下記のような実行結果になります。セル毎に異なる垂直方向のテキスト位置を一括設定できます。

まとめ
Google Apps Script (GAS) でこのセル範囲のセルの水平方向・垂直方向のテキスト位置を取得・設定する方法を説明しました。
GASは無料で利用できてとても便利なツールです。
Googleスプレッドシート等のGoogleアプリケーションを利用されている方は、GASを習得することで作業を大きく効率化できます。
GASの基本構文を知りたい方は、下記もご覧ください。