見出し画像

GASで年月日をyyyy/mm/dd形式に変換する方法


GASで年月日yyyy/mm/dd形式に変換する方法を試したいと思います。


手動で年月日をyyyy/mm/dd形式に変換する方法


まずは、手動で年月日をyyyy/mm/dd形式に変換する方法です。


例として、セルA1"2024年3月22日"と入力してみます。



まず、GASを使わずに、"2024年3月22日"yyyy/mm/dd形式に書式設定で変更してみます。


書式設定を変更する方法は2つあります。


まず、書式設定を変更したいセルをクリックして、シートのツールバーにある、123をクリックし、日付をクリックします。



もう1つの書式設定を変更する方法として、メニューバーの表示形式から数字をクリックして、日付をクリックします。



"2024年3月22日"から"2024/03/22"に書式設定が変更されました。



GASで年月日をyyyy/mm/dd形式に変換する方法


GASで年月日をyyyy/mm/dd形式に変換するには、setNumberFormat() メソッドを使用します。


メニューバーの拡張機能からApps Scriptをクリックします。



Apps Scriptのコードエディタが開きました。



function convertDateFormat() {
  var sheetName = "シート1"; // シート名を指定
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(sheetName);
  
  var cell = sheet.getRange("A1");
  
  // セルの書式を設定
  cell.setNumberFormat("yyyy/MM/dd");
}


Apps Scriptのコードエディタに、上記のコードを貼り付けて、 実行 をクリックします。


スクリプトの実行後に、承認が必要です
このプロジェクトがあなたのデータへのアクセス権限を必要としています。というダイアログが出た場合は、下記の記事を参考にアクセス権限を承認してください。


"2024年3月22日"から"2024/03/22"に書式設定が変更されました。



setNumberFormatメソッド


setNumberFormat() メソッドは、Google Apps Script(GAS)のスプレッドシートサービスで利用できるメソッドの一つです。このメソッドは、セルの表示形式を指定するために使用されます。主に数値の表示形式を変更する際に利用されます。

使用例説明setNumberFormat("#,##0.00")数値を3桁区切りの整数部と小数点以下2桁にフォーマットします。setNumberFormat("0.00%")数値をパーセンテージ形式に変換します(小数点以下2桁表示)。setNumberFormat("0.0E+00")数値を指数形式に変換します。setNumberFormat("yyyy-mm-dd")日付を年-月-日の形式で表示します。setNumberFormat("yyyy/MM/dd") 日付を年/月/日の形式で表示します。setNumberFormat("H:mm:ss") 時間を時:分:秒の形式で表示します。

function setFormat() {
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();

  // 日付の表示形式を設定します
  sheet.getRange('A1').setNumberFormat("yyyy/MM/dd");

  // 時間の表示形式を設定します
  sheet.getRange('B1').setNumberFormat("H:mm:ss");

  // 通貨の表示形式を設定します
  sheet.getRange('C1').setNumberFormat("$#,##0.00");

  // 赤字でマイナス符号を含めた表示形式を設定します
  sheet.getRange('D1').setNumberFormat("#,##0_);[Red](#,##0)");

  // 正の数値を緑字、負の数値を赤字で表示する形式を設定します
  sheet.getRange('E1').setNumberFormat("[Green]#,##0.00;[Red](#,##0.00)");

  // パーセンテージ形式を設定します
  sheet.getRange('F1').setNumberFormat("0.00%");

  // 他の例も同様に設定可能です
}


setNumberFormatの詳しい使用方法は、下記のGoogle Workspace Apps Script リファレンスを参照してください。

https://developers.google.com/apps-script/reference/spreadsheet/range?hl=ja#setNumberFormat(String)

また、使用可能な書式パターンについては、下記のSheets API ドキュメントを参照してください。

https://developers.google.com/sheets/api/guides/formats?hl=ja

この記事が気に入ったらサポートをしてみませんか?