• ベストアンサー

EXCELでビンゴゲームのようなものを作りたいのですが・・・

すみません。お知恵を拝借したく存じます。 EXCEL2003にて、ビンゴゲームのようなものを作りたいと思っています。 例C1~G5に1から25までの数字をランダムに入力し、  A1~A5に抽選番号(1~25)を入力すると、  C1~G5に入力した番号を検索し、そのセルに色を塗りたいのですが、  EXCEL2003では条件付書式が3つまでしか使えないため、  例のように4つ以上の条件がある場合での方法はないものでしょうか?  何か関数があるのでしょうか?VBAを使えばできるのでしょうか? よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.1

>EXCEL2003では条件付書式が3つまでしか使えないため、 >例のように4つ以上の条件がある場合での方法はないものでしょうか? Excel2003まででできないのは条件付き書式の「種類」を3種類までしかできないということですので、同じセルの色でよければ、数式を使った条件付き書式1つだけで問題なく該当セルを色分けすることができます。 たとえば、C1セルからG5セルを選択して「書式」「条件付き書式」で「数式が」にして「=COUNTIF($A$1:$A$5,C1)」のように設定して「書式」からセルの色を設定すればOKです。 ところで、ご質問には、25マスに乱数で数字を入れるところは聞いていないなのでしょうか?

soumatsu
質問者

お礼

できました!このようにすればできるとは、わかりやすく回答いただき、誠にありがとうございました!

soumatsu
質問者

補足

丁寧な回答ありがとうございます。25マスへの乱数というのはランダムに25マスに1~25までの数字を入力してくれるとのことでしょうか?都度、自分で入力することしか考えなかったので、それはまったく頭が回らなかったです。そんなこともできるのでしょうか?

その他の回答 (2)

  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.3

>25マスへの乱数というのはランダムに25マスに1~25までの数字を入力してくれるとのことでしょうか? ビンゴゲームだと1から25ではなく、もう少し大きい数字もあると思うのですが、仮に1から25の範囲の乱数を簡単に表示させるなら以下のような運用が簡単だと思われます。 たとえば、空白列のJ1セルからN5セルに「=RAND()」と入力します。 その下のJ6からN10セルに「RANK(J1,$J1:N5)」と入力し右方向と下方向にオートフィルコピーします。 これで、このJ1:N5セルに1から25の乱数が表示されますが、このままではセルに数値を入力するたびに乱数が作成されてしまいますので、この範囲を選択して、右クリック「コピー」し、乱数を表示するC1セルを選択して右クリック「形式を選択して貼り付け」で「値」とします。 別の乱数が必要な時は、この数式範囲を「値」でコピー貼り付けします。

soumatsu
質問者

お礼

なんと、そんなこともできるとは、重ね重ねありがとうございました。

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

変える色数を1色にすれば出来る。 ーーー >何か関数があるのでしょうか? 関数は「セルの値」を扱うもので、セルの色(書式)など扱えないのは常識。 条件付書式の条件で関数式を使える場合があるが、それは3条件までの制約でが優先するのだから、考えても無駄。 >VBAを使えばできるのでしょうか? 中級以上の熟練度ならできるでしょう。 でも ・Å1-A5の値が変わったことを捉えるイベントの考え方 ・直前のセット色をクリアする方法(25セルしかないので毎回全セルの色を一度クリアが良いかも) など知れば、あとは初等的なスキルで出来る。 一部マクロの記録というもので、勉強できる。 少しVBAが出来れば直感的に出来るかどうか、何処が難しいか判る。 それらを聞いているということは、現在は経験なしだろうが、前提知識や経験をつむのは、まず人によること、疑問を聞ける人が周りに居るか、だが、多少時間がかかると思う。

関連するQ&A

専門家に質問してみよう