从Excel中的某个范围中获取值时,以"批量"(作为2D数组)获取值比循环遍历每个行和列更有效.例如:
Dim range = Globals.Table.Range("A1:E5")
Dim values(,) As Object = range.Value
Run Code Online (Sandbox Code Playgroud)
对于25个单元格而言,它没有太大的区别,但它确实有10,000行乘20列.到现在为止还挺好.
我的问题是:有没有人找到一种方法对其他属性进行同样的"批量"提取?例如,我想找到哪种细胞以某种方式着色.我很乐意做类似"range.Interior.Color"的事情,但只返回一个值,而不是一个值数组.所以我最终循环,这可能慢100或甚至1000倍.对于大型桌子,这真的是一个杀手.
PS:看起来像.Formula就像.Value:我可以一次取多个.但是我还没有把颜色变成好玩的颜色.
我感谢您的帮助!
我一直在使用Microstation V8i SS2中的Visual Basic for Applications(VBA),我的String值出现溢出错误.
似乎VBA中的String值存在限制.限制似乎是255个字符.阅读它,很多消息来源说它可以支持多达20亿个字符.这不是真的?
会发生什么,我正在使用ADO与数据库进行交互,所以我在VBA中构建自己的SQL INSERT语句.INSERT语句变长,就像300多个字符一样,具体取决于接受多行文本值的"注释"列.
有人有解决方案吗?我应该从.NET的角度编写自己的COM-Addin,它会在VBA中引用吗?


