トップブログサポートヘルプ

KyouRyoku Play

峡緑プレイ

トップブログサポートヘルプ
トップこのサイトについてご意見峡緑についてプライバシーポリシー

KyouRyoku

峡緑

©2023 峡緑

arrow_back

戻る

Googleおみくじ神社を建立しよう!の画像

Googleおみくじ神社を建立しよう!

labelGASlabel初心者labelWEB技術
calendar_month

公開日 : 2024年12月26日

history

最終更新 : 4ヵ月前

そろそろ新年も近づいて来ました。

新年といえば、やはりおみくじですよね。

おみくじといえば、神社ですよね。

ということでこの記事では、Google Apps ScriptとGoogle Spreadsheet を用いて、おみくじを引くことのできる神社を建立しようと思います。

対象:GAS初心者。Pythonぐらいなら分かるというレベルの人を想定。

1. 神社のデザインを作る

まず、新しいスプレッドシートを作成しましょう。

このまっさらな画面に神社のデザインを作成していきます。

どのようなやり方でやってもらっても構わないのですが、上部のメニューから、挿入>画像>セル上に画像を挿入、で画像を入れることができます。

私は、いらすとやのそれっぽい画像を大量につめこんでみました。結果こんな感じです。

非常に素晴らしいデザインですね。我ながら感動しました。

これに関しては個人の好みなので、皆さん好きなように神社のデザインを作成してください。

2. おみくじボタンを設置

それでは、おみくじを実行してくれるボタンを設置しましょう。

メニューから、挿入>図形描画と進み、現れた画面に、いい感じのボタンを描画します。

これを保存して閉じ、いい感じの場所に配置しましょう。

3. おみくじのプログラムを記述

ではいよいよプログラムを記述していきます。

使用する言語はGoogle Apps Script、略してGASと呼ばれている言語です。Googleドキュメントやスプレッドシート、スライド、メールの自動化などができます。応用すると、LINEの自動化やサーバーの作成などもでき、無料ですが夢のある言語です。ただし、制限もあります。

本題に入りましょう。スプレッドシートのメニューから拡張機能>Apps Scriptを選択します。すると、コードを書くことのできる画面が出現します。一番最初はこのようなコードが書かれているのではないでしょうか?

function myFunction() {
  
}

このコードは必要ないので、消して以下のようなコードを書いてください。

function random(){
  const results = ["大吉","中吉","吉","凶","大凶"]
  const result = results[Math.floor(Math.random()*results.length)]
  Logger.log(result)
}

書き終わったら、実行ボタンを押してみましょう。すると、実行ログという画面が開きあなたの運勢を教えてくれます。ちなみに私は大凶でした…

では、ここで、このプログラムの意味を解説しようと思います。(回りくどいですが、初心者向けの記事ということで分かる人は読み飛ばしてください。)

  const results = ["大吉","中吉","吉","凶","大凶"]

まず最初、この部分では、結果として出る可能性のある運勢を列挙してresultsという名前を与えています。

  const result = results[Math.floor(Math.random()*results.length)]

そして、次の行。一番分かりにくいポイントだと思います。この行では、先程列挙した運勢の中からランダムで一つ、今日の運勢を選びます。

具体的に解説すると、Math.random() と書かれている部分、これは0以上1未満のランダムな数を返します。それにMath.random()*results.length のように、resultsの長さ(この場合だと5)をかけています。よって、Math.random()*results.length の値は0以上5未満のランダムな数となります。そして、これをMath.floor() で囲っています。Math.floor() は切り捨てを行う関数であるため、運勢の一覧であるresultsの後ろにかかれている添字は、0,1,2,3,4のいずれかランダムな数を返すということになります。よってこの行はresultsから0番,1番,2番,3番,4番いずれかの運勢をランダムに選ぶというコードになっているのです。

そして、最後の行では選ばれた結果をログに出力しています。

さて、ここまで色々と書きましたが、まだ完成ではありません。なぜならば、先程作ったボタンとこのコードを紐付けていないからです。ということで紐付けをおこなっていきましょう!

と…その前にプロジェクトを保存することをお忘れなく。ctrl + s で保存することができます。

まず、スプレッドシートにもどって、先程作ったボタンを選択すると、右上に三つの点が表示されているはずです。三点を押して、メニューを表示させ、「スクリプトを割り当て」を選択してください。

「どのスクリプトを割り当てますか?」と聞かれるのでここにrandomと書いてください。このrandom というのは、先程のコードのfunction random() を指し示しています。

これで紐付けは完了です。

ということで、満を持してボタンを押してみましょう!

…あれ、「スクリプトを実行しています」と出ただけで何も起こりませんね。

それもそのはず、なぜならば、先程のコードにはスプレッドシートに結果を表示するコードを書いていないからです。ということで、先程のコードを以下のコードに直しましょう。

function random(){
  const results = ["大吉","中吉","吉","凶","大凶"]
  const result = results[Math.floor(Math.random()*results.length)]
  Logger.log(result)
  Browser.msgBox(result)
}

これを保存して、ボタンを押すと…

また、邪魔が入りました。書いたコードがスプレッドシートにアクセスできるようにする必要があるようですね。

アクセスを許可しようとすると、途中に危険そうな画面が出てきますが、

左下の「詳細」から「無題のプロジェクト(安全ではないページ)に移動」でアクセスを許可することができます。

実行できました!!今日の運勢は凶です!!

最後に

これで、無事Googleおみくじ神社を建立することができました。このコードをもとにして、ラッキーアイテムを追加するなど、いろいろと拡張してみてください。自分だけのおみくじ神社を運営しましょう!

ここまで読んでくださりありがとうございました。ではまた!!

最新記事

その他のヘルプ - 2(MhYg)の記事画像

その他のヘルプ - 2(MhYg)

calendar_month公開日 : 2025年2月8日

このページでは、2(MhYg)に関するアカウントに関するヘルプ、投稿に関するヘルプ以外のヘルプを表示しています。

アカウントに関するヘルプ - 2(MhYg)の記事画像

アカウントに関するヘルプ - 2(MhYg)

calendar_month公開日 : 2025年2月8日

この記事では2(MhYg)のアカウントに関するヘルプを掲載しています。

投稿に関するヘルプ - 2(MhYg)の記事画像

投稿に関するヘルプ - 2(MhYg)

calendar_month公開日 : 2025年2月8日

この記事では2(MhYg)の投稿機能に関するヘルプを集めています。

2(MhYg)ヘルプの記事画像

2(MhYg)ヘルプ

calendar_month公開日 : 2025年2月6日

このページでは2(MhYg)に関してのヘルプの記事を集めています。