我对VBA相当陌生,因此请耐心等待。 我想告诉VBA从一系列单元格中获取数组。用户将一列数据粘贴到单元格C2中,以便填充C2以下的单元格。填充的单元格数量取决于用户。定义数组以获取范围内的数据为“double”var类型
我也需要将数组中的每个元素都视为双打,因为我将使用它们进行操作。
因此,如果该列表是
1.2222
2.4444
3.5555
然后我需要的阵列保留小数点。 我该怎么做? 这是我这有皮毛,没有运气:
Set ThisWS = Excel.ActiveWorkbook.Worksheets("Hoja1")
Dim InputValues() As Double 'Define Array
Dim LRow As Long 'Define length of array
With Sheets("Hoja1")
LRow = .Range("C" & .Rows.count).End(xlUp).Row
End With
InputValues = ThisWS.Range("C2:C" & LRow).Value 'Error 13: data type doesn't match
End Sub
谢谢!
你会需要数组'作为Variant',这是加载到数组中唯一支持的类型。作为其唯一的一列,您可以轻松地循环单元格并手动添加到双精度数组中 –
OT:请记住给出反馈 - 这是因为我刚刚看到[此主题](http://stackoverflow.com/questions/) 39124058/vba-error-9-when-for-each-on-an-array) - 在你的每个问题上,标记答案和其他内容,否则,具有相同问题的另一个用户将不知道什么有帮助。 – Sgdva