作者genow ()
看板Office
标题[算表] VBA ReDim 型态不符
时间Thu May 7 22:45:26 2020
软体:EXCEL
版本:2013
您好:
程式内容如下
Len1 = WorksheetFunction.CountA(Range("'工作表1'!A:A"))
ReDim MyD(Len1)
....
....
(以下省略)
我在A电脑执行时,没有出现异常
但是换到B电脑执行後,却出现型态不符的错误视窗
我後来发现如果工作表1的A栏在65535个数量以下,则A、B电脑都不会出现错误
但是数量在65536以上时,B电脑就会出错
我上网查询结果,似乎与电脑性能有关(32bit、64bit),也可能与EXCEL版本有关
但是实际的原因我还是不懂,是否可以帮忙解答以及解决方式,谢谢
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 114.24.14.26 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Office/M.1588862728.A.E01.html
※ 编辑: genow (114.24.14.26 台湾), 05/07/2020 22:59:06
1F:→ soyoso: 那改以工作表函数countif条件为"<>",看在b电脑是否可行 05/08 07:44
2F:→ soyoso: 如果不行的话,提供在b电脑会出错的档案,和b电脑excel的 05/08 07:45
3F:→ soyoso: 版本及32或64位元,这样来测试会比较清楚 05/08 07:46
4F:推 newton41: 感觉是array size limit 的问题,改别的写法吧。 05/08 11:13
5F:推 waiter337: 我怀疑 是有其他的地方错 05/09 10:27
6F:→ waiter337: 同s大 先看一下位元 05/09 10:28
7F:→ genow: 感谢楼上诸位大大的意见提供,我会逐一检视看看,希望能从 05/09 21:30
8F:→ genow: 中找到问题,谢谢 05/09 21:30
10F:→ waiter337: 这个也顺便给你参考 05/12 19:05