Excelワークブックを開いたときに実行されるマクロがあり、基本的に「現在の日」というタブからデータを取り出して「前日」に移動してから現在の日付に貼り付けます(実際にはrange.valueをコピー/貼り付けはしません)。数日間にわたる複数のテストですべてがうまくいきました。ただし、コードのRange.Value部分にオーバーフローエラーがスローされています。コードがあるので、これは間違いなく、サイズの問題ではありません。Range.Valueの設定でExcel VBAの "オーバーフロー"エラーが発生する
ScoreCurRowsロングとして宣言し、「現在の日」のシートとPrevDayからUsedRangeを引っ張るPrevDay.Range("A1:Q" & ScoreCurRows).Value = CurrDay.Range("A1:Q" & ScoreCurRows).Value
はシート(「前の日」)として定義され、 CurrDayはSheets( "Current Day")として定義されています。また、通常は20行分のデータしかないため、整数であっても問題は発生しません。
なぜこれが突然オーバーフローエラーを投げているのか、誰かが私が探しているものがあるかどうか考えている人はいますか?
「ScoreCurRows」はどのように定義されていますか? – SJR
'Debug.Print ScoreCurRows'クラッシュ時の値は何ですか? –
これは17です.. ScoreCurRows = Sheets( "Current Day")。UsedRange.Rows.Count ...整数であってもオーバーフローしないようにも意味がありません。 – MattE