0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

初めてのGoogle Apps Scriptで麻雀記録表を作成する

Posted at

初めに

こんにちは、小川です。
今回は友達と麻雀をしている際に、結果を記録して残しておきたい。
また、よく5人で麻雀をして2人ペアとなって東南戦で分けて麻雀をするということが多いため、一般的な麻雀記録表のアプリでは対応していないので、独自に麻雀記録表を作成してみることにしました。

つけたい機能

今回つけたい機能は以下の2つです。
1.1半荘毎の結果を記録
2.日毎の結果、平均順位を記録

また、ITリテラシーの低い人でも使えるようシンプルかつ、だれでも使えるようにするため、GoogleスプレッドシートのGoogle Apps Scriptを使って作成することにしました。
GoogleスプレッドシートならURLを知っていれば、簡単に見たり編集することができます。

実際にGoogle Apps Scriptを使ってみる

まずはメニューバーの拡張機能の中にある、Apps Scriptを押す。
image.png

スクリプトエディタが起動しますので、ここに処理を書いていきます。
image.png

まずはボタンを押すと本日の日付が表示される処理を作成してみる。
image.png

日付を入力というボタンを作成したかったが、リサーチ不足でボタンに処理を紐づける方法が見つからなかったため、チェックボックスを作成してそのチェックボックスにチェックが入ったら処理を行うように実装。
image.png
うまく日付が入力されました。※一度ついたチェックは自動で外れるようにしています。
image.png

基本的な処理

・アクティブなシートを取得する
var sheet=SpreadsheetApp.getActiveSheet();

・getRangeメソッドで操作するセルの範囲を指定する
var range=sheet.getRange("A1:A5");

・getRangeメソッドで指定したA1を起点(相対パス)に、getCellメソッドで行番号と列番号を指定してセルの値を取得
var cell=range.getCell(1,1).getValue();

他にもいろいろな処理がありますが、これらを使って麻雀記録表を作成していきます。

1半荘毎の結果を記録する処理を作成

まずは記録するための表を作成
image.png

ここに入力された結果を入力確定を押した際に下の表に反映するよう処理を追加します。
image.png

image.png

入力確定押下後以下のようにうまく処理が動いてくれました。
image.png

日毎の結果、平均順位を記録する処理を作成

同じく記録するための表を作成
image.png

日ごとの計算を押下した際に1半荘毎の結果が日毎の結果と平均順位が表示されるよう処理を追加
image.png

日ごとの計算を押下後以下のようにうまく処理が動いてくれました。
image.png

終わりに

Google Apps Scriptは無料で使えて開発環境の構築が不要なため気軽にできるプログラミング言語です。
今回私はGoogle Apps Script使用して麻雀の記録表を作成しましたが、手作業で行っていた業務を自動化できたり、マクロの記録で普段の作業をスクリプトに自動保存できたりといろいろな使い方ができます。
みなさんも気軽にGoogle Apps Scriptに触れてみてください。

以上、小川でした。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?