2022/03/23に更新

【GASで便利に】西暦から和暦に変換する

スプレッドシート小技

指定した年の和暦を表示するだけのGoogle Apps Scriptです。和暦を使うことは稀によくあるので、このスクリプトを登録しておくと便利かもしれません。

こんな悩みを解決します


  • 西暦から和暦を調べたいが、毎回ググるのがめんどくさくなった。

用意するもの


特にありません。今お使いのスプレッドシートに組み込めます。

このスクリプトで出来ること


  • 西暦から和暦に変換することができます。
  • 対応しているのは昭和以降(1926年以降)です。

使い方


1.スクリプトの実行

上のメニューに有る「スクリプト実行」から「西暦から和暦に変換する」を実行します。

2.変換元の西暦を入力する

ポップアップウィンドウに和暦に変換したい西暦を入力します。
空欄の場合は今年の西暦として変換が実行されます。

3.結果の確認

「西暦〇〇年は和暦〇〇年です」とメッセージが表示されます。
簡易的な実装のため、各元号の元年にあたる年は新元号だけが出力されます。
たとえば2019年は平成31年であり、令和1年でもありますがこのスクリプトでは「令和1年」としか表示されませんのでご注意ください。

4.エラーメッセージ

このスクリプトは昭和以降の西暦、和暦にしか対応していません。
それ以前の西暦を入力した場合は「1925年以前(大正以前)は未対応です」というエラーメッセージが表示されてスクリプトが終了します。

スクリプト


/**
 * このスクリプトの説明、使い方はこちら。
 * https://myfunc.jp/items/00059/index.html
 */

function onOpen() {
  // スプレッドシートを開いたときに実行される関数

  // UIの取得
  const ui = SpreadsheetApp.getUi()

  // メニューの表示名
  const menu = ui.createMenu('スクリプト実行');

  // メニューに追加するボタン
  menu.addItem('西暦から和暦に変換する', 'seireki_to_wareki');

  // メニューを画面に追加する
  menu.addToUi();
}


function seireki_to_wareki() {

  // UIを取得
  const ui = SpreadsheetApp.getUi();

  // 変換元の西暦を入力してもらう
  const input = ui.prompt('西暦を入力してください\n空欄の場合は今年の和暦が表示されます', ui.ButtonSet.OK_CANCEL);

  // キャンセルが押されたらスクリプトを終了する
  if (input.getSelectedButton() == ui.Button.CANCEL) {
    return;
  }

  // 入力された西暦を取得する
  let seireki = input.getResponseText();

  // もし空欄の場合は今年とみなす
  if(seireki == ''){
    seireki = new Date().getFullYear();
  }

  // 大正以前には対応していない
  if(seireki < 1926){
    ui.alert('1925年以前(大正以前)は未対応です');
    return;
  }

  // 和暦表示用の変数を準備
  let gengou = '';
  let year = '';

  // 西暦によって元号と年をを判定する
  switch (true) {
    case seireki >= 2019:
      gengou = '令和';
      year = seireki - 2018;
      break
    case seireki >= 1989:
      gengou = '平成';
      year = seireki - 1988;
      break
    case seireki >= 1926:
      gengou = '昭和';
      year = seireki - 1925;
      break
    default:
      break
  }

  // 結果を表示する
  ui.alert(seireki + '年は' + gengou + year + '年です');

}

関連するアプリ


関連するアプリはまだありません

タグ一覧

最新のアプリ

人気のアプリ

myfunc.jp