第5講 Subプロシージャ
第6話 複数の引数
素数列挙マクロコード例
Private Sub CommandButton1_Click()
Dim h As Long, o As Long
h = Cells(6, 1)
o = Cells(8, 1)
f h, o
End Sub
Sub f(h As Long, o As Long)
Dim cn As Long
Dim i As Long, j As Long, r As Long
cn = 0
For i = h To o
If i = 2 Then
Cells(6 + Int(cn / 30), 2 + (cn Mod 30)) = i
cn = cn + 1
End If
If i Mod 2 = 0 Then
GoTo owari
End If
r = Sqr(i)
For j = 3 To r Step 2
If i Mod j = 0 Then
GoTo owari
End If
Next
Cells(6 + Int(cn / 20), 2 + (cn Mod 20)) = i
cn = cn + 1
owari:
Next
Cells(7 + Int(cn / 20), 2) = "素数個数"
Cells(7 + Int(cn / 20), 3) = cn
End Sub
それでは、例を変えて引数が3つの場合を考えてみましょう。
等差数列の和を求めるマクロを再び考えましょう。
例
3+5+7+・・・+21
これを計算させるとき、
f 3,19,2
としてプロシージャを呼び出すものとします。
つまり、
f はじめの値,終わりの値 ,変化の幅
です。
実行結果例
では皆さんコードを考えましょう。
第5話へ 第7話へ
vc++講義へ
vb講義へ
VB講義基礎へ
初心者のための世界で一番わかりやすいVisual C++入門基礎講座へ
初心者のための世界で一番わかりやすいVisual Basic入門基礎講座へ
数学研究室に戻る