在VBA中为数组分配范围 [英] Assigning range to array in VBA
问题描述
我想将Excel数据导入到VBA中的数组中,所以我执行以下操作:
Dim Arr作为变量
Arr = ActiveWorkbook.Sheets(Sheet1)。范围(C28:R29)
一旦我运行这个,我得到一个类型不匹配错误13.
我认为问题是因为第一行(总共2行)表示一个字符串(标题),第二行表示数字,所以我试图只得到这样一行:
Arr = ActiveWorkbook.Sheets(Sheet1)。Range( C28:R28)
无法使用,我仍然遇到同样的问题。 b
$ b
有没有人知道可能是什么问题?
Regards
Crouz
这很简单,只需添加 .Value
(我发现不久之前的伎俩,我已经是粉丝!:))
Arr = ActiveWorkbook.Sheets(Sheet1)。Range(C28:R28)。Value2
I would like to get excel data into an array in VBA, so I do the following:
Dim Arr() As Variant
Arr = ActiveWorkbook.Sheets("Sheet1").Range("C28:R29")
As soon as I run this, I get a type mismatch error 13. I thought the problem was because the 1st row (2 rows in total) represents a string (header) and the 2nd row represents numbers, so I tried to only get one row like this:
Arr= ActiveWorkbook.Sheets("Sheet1").Range("C28:R28")
To no avail, I still get the same problem.
Does anyone know what could be wrong?
Regards Crouz
It's pretty simple, just add .Value
(I discovered that trick not so long ago and I'm already fan! :) )
Arr= ActiveWorkbook.Sheets("Sheet1").Range("C28:R28").Value2
这篇关于在VBA中为数组分配范围的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!