|
▼tomr25 さん:
こちら、2003ですが、同様になります。
(以下のTest1はOK,Test2はエラー。)
まぁ、配列は領域と同じと考えた時、少なくともxl2003の行数で
65537は、ありえないのでエラーとなるのも、うなずけるのですが
これが2010でも同じということですね。
う〜ん・・・WorkSheetFunctionクラスのMax関数の中身が
2010でも、2003のロジックのままとか・・・?
シート上でA列に、65537行分、値をいれて、=Max(A1:A65537) とやると
どうなりますか?
Sub Test1()
Dim v(1 To 65536) As Single
Dim i As Long
For i = 1 To UBound(v)
v(i) = i
Next
MsgBox WorksheetFunction.Max(v)
End Sub
Sub Test2()
Dim v(1 To 65537) As Single
Dim i As Long
For i = 1 To UBound(v)
v(i) = i
Next
MsgBox WorksheetFunction.Max(v)
End Sub
>Excel2010を使用しています.
>マクロにて,single配列にデータを格納してworksheetfunctionでmaxやmodeを使うと,配列の要素数が65535を超えると「実行時エラー13,型が一致しません」というエラーがでます.
>できれば関数を使いたいのですが,良い対応手段があれば教えてください.
|
|