20代による20代でリタイア生活を目指すブログ

不労所得で20万/月を稼ぎ、リタイアを目指すブログです。

エクセルVBAを使って運勢保存・10連機能付きおみくじを作ってみる1 ~仕様の決定~

こんにちは。

はとぶーです。

 

突然始まる連載シリーズ

「エクセルでおみくじを作ってみる」です。

このシリーズの記事はこちら

エクセルVBAを使って運勢保存・10連機能付きおみくじを作ってみる2 ~ボタンを配置し、現在の日付をセルに書かせる~ - 20代による20代でリタイア生活を目指すブログ

 

ふと思いついたので作ってみようと思います。

 

で、一度検索を掛けると、何件か作り方を書いているサイトがありました。

そのまま通り作っても面白味がないので、そういったサイトは見ずに作成します。

自分が何を思って、とある関数を調べたのかとか書いていくことができればと思っています。

 

 

さて、記念すべき第一回目はどんなものを作るかを決めます。

あらかじめだいたいのことは決めておかないと、汎用性に乏しいものしか作れません。(経験談)

なので、大まかにこんな感じにしよう!

いや、これなら拡張のとき困るなとか

いろいろ考えながら設計図を作りたいと思います。

仕様(機能)

 

「おみくじを引く」というボタンを配置し、ユーザーがそのボタンをクリックすることで、「大吉」、「中吉」、「小吉」、「末吉」、「吉」、「凶」のいずれかを表示する。

その際の確率は、大吉:5%、中吉:10%、小吉:20%、末吉:20%、吉:20%、凶:25%とする。

 

引いた日も結果も記録できるようにする。

 

また、「10回おみくじを引く」というモードも搭載する。

確率などは一回の場合と同様とする。

 

10回の方はスマホゲームで10連ガチャがあるからです。

表示する文章と確率を変えれば、あなたのプレイしているゲームのシミュレーターに早変わりです。

 

 

見た目

 

f:id:hatonorita:20180912210433j:plain

ぱぱっと作ってみました。

もちろん今はすべて手で打ち込んでいます。

こんな感じのものを目指していきたいです。

 

使いそうな式

 

・ボタンを押したときの日付を入力する関数。

 

・セルが空白かどうかを調べる関数。

 

・確率のところで、1~100までの乱数を一つ作り、1~5ならば大吉、6~15なら中吉という風にしようかなと思っているので、指定した範囲内で乱数を生成する関数。

 

とりあえずはこんなものかな。

ちなみに、乱数生成の関数はあるかわからないです。

とりあえず案としてあげています。

ない時はその時考えます。

 

~フローチャートもどき~

①「おみくじを引く」ボタンを押す。

②今日の日付を取得しセルに書き込む。

ただし、何か文字があれば下のセルに書く。

③同時に1~100の範囲で乱数を生成し、どの運勢に対応するかを判断させ、②と同様の方法でセルに書きこませる。

 

こんな感じでしょう。

 

次回から具体的な関数名を出しながら作っていきたいです。