|
▼派遣社員のレイコ さん:
>はじめまして★賢者の皆様。
>今度、会社の行事でくじ引きをするんですが、
>その時に抽選結果をスロットマシーンのように
>数字が動いて3桁のあたりナンバーを表示する
>ようなものを作りたいんです。しかも、動いてる
>数字を止める時は、1リールずつストップボタン
>で止めたいんです・・・。あと、あたりナンバーは
>1〜299までがいいんです。
>知恵を貸して頂けるとありがたいです!
'これで一応ルーレットらしく動きます
'次のsubでフォームを表示
'Sub UserForm表示()
' UserForm1.Show
'End Sub
'ユーザーフォームに4つのボタンを作り、下記VBAをそのフォームに貼り付けてください
Private flag1 As Integer
Private flag2 As Integer
Private flag3 As Integer
'停止ボタン1列目
Private Sub CommandButton1_Click()
flag1 = 1
End Sub
'停止ボタン2列目
Private Sub CommandButton2_Click()
flag2 = 1
End Sub
'停止ボタン3列目
Private Sub CommandButton3_Click()
flag3 = 1
End Sub
'開始ボタン
Private Sub CommandButton4_Click()
flag1 = 0
flag2 = 0
flag3 = 0
a = 0
b = 0
c = 0
Do While (flag1 + flag2 + flag3 = 3) = False
DoEvents 'これでButton1のクリックを可能にする
If flag1 = 0 Then リール a, 1, 3
If flag2 = 0 Then リール b, 2, 10
If flag3 = 0 Then リール c, 3, 10
Loop
UserForm2.Hide
End Sub
'各列のリールルーチン
Sub リール(j, 列, max)
Cells(1, 列) = j
Cells(1, 列).Interior.ColorIndex = j + 5
'
k = j + 1
If k = max Then k = 0
Cells(2, 列) = k
Cells(2, 列).Interior.ColorIndex = 36
'
m = k + 1
If m = max Then m = 0
Cells(3, 列) = m
Cells(3, 列).Interior.ColorIndex = m + 5
j = j + 1
If j = max Then j = 0
End Sub
|
|