見出し画像

1から10までのたしざんをVBAで考える。

1から10までのたしざんを思いつく限りVBAでやってみました。私が思いついたのは8種類です。コピペで使えます。もっと良いコードがあるよという場合は私にも教えてください。処理時間の測定もしましたが「ワークシートを計算に使うと遅くなる」というよく知られた事実を確認しました。詳しくは動画をご覧ください。

Private Sub tasizan1()
MsgBox 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10
End Sub

Private Sub tasizan2()
x = 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 10
MsgBox x
End Sub

Private Sub tasizan3()
x = WorksheetFunction.Sum(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
MsgBox x
End Sub

Private Sub tasizan4()
n = 0
x = 0
For i = 1 To 10
n = n + 1
x = x + n

Next i
MsgBox x
End Sub

Private Sub tansizan5()
n = 0
x = 0
For i = 1 To 10
n = n + 1
Cells(i, 1) = n
x = x + Cells(i, 1)
Next i
MsgBox x
End Sub

Private Sub tansizan6()
n = 0
x = 0
For i = 1 To 10
n = n + 1
Cells(i, 1) = n
Next i
x = WorksheetFunction.Sum(Range("A1:A10"))
MsgBox x
End Sub
Private Sub tasizan7()
Range("a1:a10") = ""
a = Range("a1:a10")
n = 0
x = 0
For i = 1 To 10
n = n + 1
a(i, 1) = n
x = x + a(i, 1)
Next i
MsgBox x
End Sub

Private Sub tasizan8()
Range("a1:a10") = ""
a = Range("a1:a10")
n = 0
x = 0
For i = 1 To 10
n = n + 1
a(i, 1) = n

Next i
x = WorksheetFunction.Sum(a)
MsgBox x

End Sub