OfficeType

VBA~実行時エラー'6'オーバーフローしました。~Excel

エラー名

実行時エラー'6'オーバーフローしました。

image-01

原因

変数の型にはそれぞれ許可されている値の範囲があり、その範囲外の値を入れるとエラーが発生します。例えば下のエラーの出るコードでは整数型の変数Integerは-32,768~32,767の範囲の整数を入れられますが、範囲を超える35000を入れようとしているのでエラーが発生します。長変数型の変数Longは範囲が-2,147,483,648~2,147,483,647なので35000を入れてもエラーは発生しません。

エラーが出るコード

Sub test1()

Dim a As Integer

a = 35000

End Sub

修正したコード

Sub test2()

Dim a As Long

a = 35000

End Sub