srkp.net
当前位置:首页 >> VBA UBounD一个二维数组的问题 >>

VBA UBounD一个二维数组的问题

你对UBound函数的理解没错。问题在于数组A的结构只是你自己主观想象。 你在VBA编辑器中,选择视图→本地窗口,然后按F8逐行测试代码,自然可以在本地窗口中看到数组A的结构。这样不就一目了然了,知道问题在哪儿了吗。

是一样的。

M = UBound(mtxA, 1) 代表mtxA数组第一维数组的最大下标 n = UBound(mtxB, 1): 代表mtxB数组第一维数组的最大下标 L = UBound(mtxB, 2) 代表mtxB数组第二维数组的最大下标

返回4,因为默认下标是从0开始的。相当于A(0 to 4) UBound语法如下: 返回一个 Long 型数据,其值为指定的数组维可用的最大下标。 UBound(arrayname[, dimension]) arrayname 必需的。数组变量的名称,遵循标准变量命名约定。 dimension 可选的...

UBound的是数组的上界 比如一组数组arr(1 to 10),那么ubound(arr)=10 二维数组arr(1 to 10,1 to 100), ubound(arr,1)=10表示第一维的上界是10 ubound(arr,2)=100表示第二维的上界是100

请把set去掉,如果加上set,那arr就等于单元格对象,不是数组了,如果不是数组,那UBound(arr, 1)当然类型不匹配咯

写成 if Ubound(CMinRow)=0 then 这种试下,就像你只写一个range("a1")在单独一行,肯定报错。

什么错误呢? 语法是正确的,但是第一次用的时候,数组还没建立,UBound(strSearchKey) 这里会出错,下标越界(是不是这个错误?) 在开始处加句 redim strSearchKey(1 to 4,1 to 1) 还有用Preserve 保持数组的内容,应该是改变数组最后一维的...

问题一: f = Application.GetOpenFilename;这句后F是一个一维数组,分别为你选中的文件; 你可以输入代码PRINT F(1) 这个就会显示第一个文件;PRINT (2) 就会显示你选中的第二个文件 如果我们选中的是2个文件,那么 UBound(f)就为2了。 定义 F...

可以用Resize来实现,示例如下: arr=range("A1:Z1")'将第一行,A到Z列,赋值给数组arr range("A2").resize(ubound(arr),1)=application.transpose(arr)'将数组Arr转置后,赋予A2开始的A列中。 关于Resize属性: 调整指定区域的大校返回 Range对...

网站首页 | 网站地图
All rights reserved Powered by www.srkp.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com