【ExcelVBA入門】Rnd関数・Int関数を使った乱数取得方法を徹底解説!

こんにちは、フリーランスエンジニア兼ライターのワキザカ サンシロウです。

皆さんは、VBAで乱数を取得する方法を知っていますか?

Rnd関数・Int関数を使えば、指定した範囲の数値から簡単に乱数を取得することができます。

そこで今回は、

・Rnd関数とは

といった基礎的なことから、

・Int関数を応用した整数の乱数取得方法

・指定した範囲の乱数を取得する方法

といった応用的な方法まで、徹底的に解説します!

Rnd関数とは

Rnd関数を使うと、0以上1未満の乱数を簡単に取得することができます。

サンプルコード:

実行結果:

この例では「0.4100367」と表示されている値が乱数なので、処理を実行するごとに値が変わります。

このように、簡単に乱数を取得することができます。

Int関数を使った整数の乱数取得方法

ただ、整数で乱数を取得したいケースもありますよね。

Int関数を使うと、小数以下を丸めて整数のみ取得することができます。

実行結果:

Int関数を応用して、Rnd関数とあわせて使うと整数の乱数を取得することができます。

実行結果:

Rnd関数は0以上1未満なので、10かけた値をInt関数で整数のみにしています。

0 ~ 9の乱数を取得したい場合はこの方法でOKです。

応用編:指定した範囲の整数を取得する方法

0 ~ 9までの乱数取得方法を紹介しましたが、10以上の数を範囲に指定して取得したいときもありますよね。

さらに応用して以下のように書くと、指定した範囲の乱数を取得することができます。

Int関数は銀行型の丸め方式で小数以下が切り捨てられてしまうため、最後に最小値を再度たす処理を入れています。

この方法を使えば、以下のように簡単に指定範囲の乱数が取得できます。

サンプルコード:

実行結果:

まとめ

今回は、VBAで指定した範囲の数値を乱数を取得する方法について解説しました。

乱数はExcelでデータ分析をする場合によく使います。

Rnd関数Int関数を使った乱数取得方法を覚えておけば、応用が利くのでおすすめです。

使い方も簡単なので、ぜひ使ってみてくださいね!

Excel VBAを最短で習得したい方へ

元々ITリテラシーの高い方やプログラムの学び方がわかっている方であれば、この記事通りに進めていけば、Excel VBAを独学で習得することができるでしょう。

ただし、実際の学習期間中はつまづいている時間がほとんどです。

「なかなかやり遂げられ無い、挫折してしまった」
「時間が足りない」
「情報が少なくどう調べればいいかわからない」
「エラーを解決することができない」

このような悩みを抱えている方も少なく無いと思います。

  • もう挫折したくない
  • 本業と両立しながら、好きな時間で自分のペースで勉強を続けていきたい
  • 自分だけのカリキュラムで効率的に勉強したい
そんな方はお気軽に侍エンジニア塾までご相談ください。

お一人お一人に専属のインストラクターがつくので、より深くExcel VBAについて学習することできます。

まずは『無料体験レッスン』で、弊社のコンサルタントと一緒にあなた専用の学習方やカリキュラムを考えてみませんか?

Excel VBAならではの学習方法や、現役エンジニアから貴重なアドバイスを受けることができます。

詳しくは下の画像をクリックして弊社サービス内容をご確認ください。

cta2_vba2

LINEで送る
Pocket

書いた人

Sanshiro Wakizaka

Sanshiro Wakizaka

フリーランスエンジニア兼ライターのワキザカ サンシロウです。
ExcelVBAの自動化ツール開発、WEB開発をメインにエンジニア業務をこなしつつ、サムライエンジニアにてライター業務をしております。

プログラミングをこれからやってみたい方に向けて、ためになる記事を全力で書いていきますので宜しくお願い致します!

おすすめコンテンツ

あなたにぴったりなプログラミング学習プランを無料で診断!

プログラミング学習の効率を劇的に上げる学習メソッドを解説