第3講 For文の学習
第7話 ランダムデータの発生
第6話問題解答例
Private Sub CommandButton2_Click()
Range("B7:H48").Select
Selection.ClearContents
Cells(1, 1).Select
End Sub
では、データ作成のコード書いていきましょう。まずコピペで
Private Sub CommandButton2_Click()
Range("B7:H48").Select
Selection.ClearContents
Cells(1, 1).Select
End Sub
と同じものを
Private Sub CommandButton2_Click()
Range("B7:H48").Select
Selection.ClearContents
Cells(1, 1).Select
End Sub
と同じものを作ります。
Private Sub CommandButton1_Click()
Dim i As Byte, j As Byte, w As Single
'生徒の合計点・平均点の計算
For i = 1 To 40
w = 0
For j = 1 To 5
w = w + Cells(6 + i, 1 + j)
Next
Cells(6 + i, 7) = w
Cells(6 + i, 8) = w / 5
Next
'各教科等の合計点・平均点の計算
For i = 1 To 7
w = 0
For j = 1 To 40
w = w + Cells(6 + j, 1 + i)
Next
Cells(47, 1 + i) = w
Cells(48, 1 + i) = w / 40
Next
End Sub
Private Sub CommandButton2_Click()
Range("B7:H48").Select
Selection.ClearContents
Cells(1, 1).Select
End Sub
Private Sub CommandButton2_Click()
Range("B7:H48").Select
Selection.ClearContents
Cells(1, 1).Select
End Sub
そして、2番目の
Private Sub CommandButton2_Click()
Range("B7:H48").Select
Selection.ClearContents
Cells(1, 1).Select
End Sub
の中身をいったん空にします。
Private Sub CommandButton2_Click()
End Sub
2を3に変更します。
Private Sub CommandButton3_Click()
End Sub
もちろん、コピペからの作業はキーボードから手で入力されてもかまいませんが、
コーティング作業ではコピペをうまく活用しましょう。
Private Sub CommandButton3_Clickのコーティングをします。
ランダムデータを発生させるには、Rnd()をつかいます。
これは1未満のランダムな小数を発生させるものです。
100未満の小数ならなら100*Rnd()です。これを整数に丸めるには、
Int(100*Rnd())です。Int(小数)は、小数部分を四捨五入して整数にします。
例えば。Int(12.54)は13になります。
ですからB7にランダムな100未満の整数のデータを発生させたいならば、
Cells(7, 2) = Int(100 * Rnd())
とすればよいのです。
それでは2次元ループを使ってB7からF48のすべてにアットランダムなデータを発生させてみましょう。
コード例は30行下。
コード例
Private Sub CommandButton3_Click()
Dim i As Byte, j As Byte
For i = 1 To 40
For j = 1 To 5
Cells(6 + i, 1 + j) = Int(100 * Rnd())
Next
Next
End Sub
コーティングできたら、カーソルがPrivate Sub CommandButton3_Click()とEnd Sub間にあることを確認して、
もし、ない場合は間をクリックして間に来るようにして、
ボタンをクリックします。
Alt+F11でエクセルに戻ると、
データが入っています。
さらに、データ作成ボタンを押すます。すると、さっきとは異なるデータが入ります。
何回も押して、毎回異なるデータが入ることを確認して下さい。
成績処理ボタンを押したり、データ消去ボタンを押したりしてください。
成績一覧表改良版が完成していることがわかります。
後にIf文の学習や高次元ループを学習する際に再び成績一覧表に戻りますが、
いったん第3講の学習は終了といたします。
第6話へ 第4講第1話へ
vc++講義へ
vb講義へ
VB講義基礎へ
初心者のための世界で一番わかりやすいVisual C++入門基礎講座へ
初心者のための世界で一番わかりやすいVisual Basic入門基礎講座へ
数学研究室に戻る