Re5:50歳から始めるラズベリーパイ-6
Re5:50歳から始めるラズベリーパイ
簡単なゲームで学ぶVBAプログラミング入門
amazon kindle版を出版しました。
3.3 ブロックパズルの作成-2
'main()のプログラムです。
'main()では初期設定をしています。
Option VBAsupport 1
Dim table(3, 3) As Integer
Dim m As Integer '0:何もしない、1:上、2:右、3:下、4:左 時計回り
Dim x(9) As Integer '角の値を決めます。
Dim y(9) As Double
Range("A:E").ColumnWidth = 7
wi = Columns("A").Width '幅を取得する
Range("1:4").RowHeight = wi
Range("A1: E4 ").Clear 'A1からB2の範囲をクリア"
Range("A1:C3").HorizontalAlignment = xlCenter
Range("A1:C3").Font.Size = 32
Range("A1:C3").Borders.Weight = xlThin'xlHairline:極細, xlThin:細い
Range("A1:C3").Borders.LineStyle = xlContinuous'xlContinuous:細い実線
For i = 0 To 8
y(i) = Rnd
'Cells(i + 1, 7).Value = y(i)
x(i) = i + 1
Next i
For i = 0 To 7
For ii = i + 1 To 8
If (y(i) < y(ii)) Then
t1 = y(ii)
y(ii) = y(i)
y(i) = t1
t2 = x(ii)
x(ii) = x(i)
x(i) = t2
End If
Next ii
Next i
n = 0
For i = 0 To 2
For ii = 0 To 2
table(i, ii) = x(n)
n = n + 1
Next ii
Next i
For i = 0 To 2
For ii = 0 To 2
If (table(i, ii) <> 9) Then
Cells(i + 1, ii + 1) = table(i, ii)
End If
Next ii
Next i
For i = 0 To 2
For ii = 0 To 2
If (Cells(i + 1, ii + 1).Value >= 1 And Cells(i + 1, ii + 1).Value <= 3) Then
Cells(i + 1, ii + 1).Interior.Color = RGB(0, 255, 0)
ElseIf (Cells(i + 1, ii + 1).Value >= 4 And Cells(i + 1, ii + 1).Value <= 6) Then
Cells(i + 1, ii + 1).Interior.Color = RGB(255, 255, 0)
End If
If (Cells(i + 1, ii + 1).Value >= 7 And Cells(i + 1, ii + 1).Value <= 9) Then
Cells(i + 1, ii + 1).Interior.Color = RGB(255, 0, 0)
End If
Next ii
Next i
End Sub