第6講 If文(分岐)を理解しよう
第14話 1次元のFor文で2次元ループをする方法による行部分の改良
行部分の改良例
Private Sub CommandButton1_Click()
Dim w As Byte, i As Byte, h As Byte
Dim s As Byte, a As Byte, k As Byte '最初から使うので中程から移動
h = 1
w = 0
k = Int(6 * (6 * 6 + 1) / 2) '毎回計算させないようにするため
For i = 0 To 35
a = i Mod 6
s = Int(i / 6)
w = w + Cells(7 + a, 1 + s)
If a = 5 Then
If h = 1 Then If w <> k Then h = 0
Cells(13, 1 + s) = w
w = 0
End If
Next
w = 0
For i = 0 To 35
a = i Mod 6
s = Int(i / 6)
w = w + Cells(7 + s, 1 + a)
If a = 5 Then
If h = 1 Then If w <> k Then h = 0
Cells(7 + s, 7) = w
w = 0
End If
Next
w = 0
・
・
・
End Sub
Private Sub CommandButton2_Click()
Range("A13:F16").Select
Selection.ClearContents
Range("G7:G12,I16:v19,R7:R15").Select
Selection.ClearContents
Range("A1").Select
End Sub
参考ファイル
さて、次の課題です。
魔方陣部分を参考にして、
数独部分の列と行の判定部分を1次元のFor文で2次元ループをする方法によって改良してください。
初心者のためのc++ vc++ c言語 入門 基礎から応用までへ
初心者のための excel 2007 2010 2013 vba マクロ 入門 基礎から応用まで
初心者のための世界で一番わかりやすいVisual C++入門基礎講座
初心者のための世界で一番わかりやすいVisual Basic入門基礎講座へ
vb講義トップへ
VB講義基礎へ
専門用語なしのC++入門へ
専門用語なしのJava入門へ
専門用語なしのVBA入門
数独のページ
魔方陣のページ
数学研究室に戻る
本サイトトップへ