vb下標越界

2022-12-05 15:16:38 字數 864 閱讀 7425

1樓:匿名使用者

lz:你的

for i = 1 to 20

mark(i) = int(rnd * 100)next i

結束後i的值是21,所以j = mark(i) \ 10中的mark(i)即mark(21),當然下標超出設定範圍。

2樓:

j= mark(i) \ 10

有問題呀,i=21了

把s(1 to 20) as string改了呀你想要的程式是這樣的吧

dim mark(1 to 20) as integer, s(1 to 20) as integer, i%, j%

for i = 1 to 20

mark(i) = int(rnd * 100)j = mark(i) \ 10

select case j

case 0 to 5

s(5) = s(5) + 1

case 9 to 10

s(9) = s(9) + 1

case 6 to 8

s(j) = s(j) + 1

end select

next i

for i = 1 to 20

print mark(i);

next i

print

end sub

3樓:匿名使用者

因為i經過迴圈後值為i=21,而你定義的 mark(1 to 20)的上限為20,所以執行到j = mark(i) \ 10這句後會出現下標越界的錯誤。

4樓:小羅

此時 i 的值是 21 了。

no ,比前一位慢了。

Excel提示錯誤9,下標越界,怎樣解決

在你的vba 中引用的下標不存在了,比如你原來有sheets 5 或者sheets 5 這 5不存在了或者名字改了 還有其他有引用下標的函式,下標出錯等等.你這段 寫得不簡潔,是錄製巨集改的吧。workbooks.open thisworkbook.path i xls 這句應該有問題,反向了。但不...

excel中執行錯誤9,下標越界,請各位大俠給指點指點,如下

你斷點監控一下 看是執行到什麼地方的時候提示下表越界 我的excel巨集出了問題,執行時錯誤9,下標越界,請各位大俠幫助,謝謝!請在立即視窗輸入如下命令顯示工作簿物件的name 顯示的內容才是你的當前工作簿的名專稱。因屬為名稱被改掉了 如我附件所示,thisworkbook被改名為 itisrena...

vba執行時錯誤9下標越界,VBA執行時錯誤9,下標越界

excel中vba提示下標超界,說明物件不存在或者陣列元素不存在。舉個簡單的例子 工作表中沒有 1月 這個工作表,卻用sheets 1月 陣列定義的是arr 1 to 10 卻用arr 11 都會出現下標越界的提示。簡單的理解 下標越界就是引用超出了所在的範圍。1 當我們在excel的vba中輸入下...