Google Apps Script(GAS)で数字をカンマ区切りする最も簡単な方法

Google Apps Script(GAS)でNumber型(数字型)の変数をスプレッドシートやログ出力する際に「カンマ(,)区切り」で表示する方法を解説します。

1000を1,000のようにカンマ区切りで表示する最もお手軽・簡単な方法です。

GASで数字をカンマ区切りで出力したい

Google Apps Script(GAS)を使い、数値型の変数をログやスプレッドシートに出力するケースは多いと思います。

その時に「10000」のようなプレーンな数字ではなく、「10,000」のようにカンマ区切りで表示したい要望も多いです。

もちろん、スプレッドシートの場合は出力先のセルの書式設定を「カンマ区切り」の表記にしておけば、そのように表示されます。

しかしセルのデフォルトの設定ではないため、わざわざ設定するのには手間がかかります。

カンマ区切りの数字を出力する最も簡単な方法

カンマ区切りの数字をスプレッドシート、ドキュメントなどに出力する最も簡単な方法を紹介したいと思います。

toLocaleString()」メソッドを利用することです。

toLocaleString()メソッドは、数値型(Numberクラス)の変数を文字列に変換するとともに、ロケール処理によってカンマ区切りにする処理が施されます。

その結果、100000のような数値が「100,000」と3ケタごとにカンマ区切りで出力できます。

※ロケール処理は実行環境によって挙動が異なります。JPロケールの場合にカンマ区切りに変換されます。

スプレッドシートにカンマ区切りの数字を出力するサンプルコード

toLocaleString()メソッドを使い、スプレッドシートにカンマ区切りの数字を出力するサンプルコードを作成しました。

Google Apps Script(GAS)でスプレッドシートにカンマ区切りで数字を出力するソースコードのスクリプト

function outputNumber() {
//スクリプトに紐づくスプレッドシートのアクティブなシートを読み込み
let sheet = SpreadsheetApp.getActiveSheet();
//10万の数字を定義する
let num = 1000000;
//A1セルに変数numをそのまま出力する
sheet.getRange(1, 1).setValue(num);
//A2セルに変数numにtoLocalStringを実行した値を出力する
sheet.getRange(2, 1).setValue(num.toLocaleString());
}

A1セルには100000と出力されていますが、A2セルには100,000とカンマ区切りで表示されています。

Google Apps Script(GAS)のスクリプト実行で数字をカンマ区切りにスプレッドシートに出力した結果

数量などの数字をスプレッドシートの表に記載する場合はカンマ区切りの方が読みやすいため、toLocaleStringメソッドを利用するのがオススメです。

なお、スプレッドシートに格納された値としてはカンマ区切りでも1000000という数字として格納されます。

文字列として保存されるわけではないので、合計や集計などの数式・関数も問題なく機能します。

Googleドキュメントやテキストファイルでも出力可能

このtoLocaleStringメソッドを使った、数字のカンマ区切り表示はGoogleドキュメントやテキストファイルに出力する際も使用可能です。

  • ドキュメントで注文書や発注書を作成する
  • HTMLファイルでカンマ区切り数字を記載する

といったユースケースでもカンマ区切りが活用できます。

まとめ・終わりに

今回、Google Apps Script(GAS)でスプレッドシートなどに数字を出力する場合に、カンマ区切り表示にする方法を紹介しました。

通常の数字型の変数にtoLocaleStringメソッドを使うことで、カンマ区切り表示が可能です。

スプレッドシートには数値として保存されるので計算・集計には影響はなく、ドキュメントでも適用可能です。

カンマ区切りで数字表示したい場合にはご活用ください。