【问题标题】:Convert Excel Range to Collection将 Excel 范围转换为集合
【发布时间】:2014-04-09 19:19:30
【问题描述】:

所以,我想看看是否有办法将二维 excel 范围转换为集合。因此,不用说,我只想将信息保留在 A 列中,即数组的第一个索引。我已经设法将球带到了这么远......

Dim ExcelAp As New Excel.Application
Dim APbook As Excel.Workbook = ExcelAp.Workbooks.Open("C:\SomeWorkbook.csv")
Dim APsheet As Excel.Worksheet = APbook.Worksheets(1)
Dim myArray As Object(,) = APsheet.UsedRange.Cells.Value

这给了我一个对象数组。我可以清楚地看到我希望在第一列中获取的值,但我需要将第一列值放入集合中。有没有一种简单的方法可以做到这一点,还是我坚持循环遍历数组以将值添加到集合中?

编辑:所以...使这更加复杂...当我尝试简单地循环时,抓住'myArray(counter,1)'会抛出IndexOutofRangeException,当我在即时窗口中尝试时:Debug.Print(myArray(0, 1))我收到错误消息Index '-1' for dimension '0' is out of range. What the what?

【问题讨论】:

  • 不需要是 myArray(0)(1) 而不是 myArray(0,1) 吗?

标签: arrays vb.net collections


【解决方案1】:

其实我很想评论,但是我没有足够的rep,所以我必须回答。

您不想使用 myArray(0, 1) 开始循环,而是使用 myArray(1, 1),因为 excel 数组索引是基于 1 而不是 0。

至于将数组转换为列表,我发现的唯一方法是循环。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-05-11
    • 1970-01-01
    • 2017-01-28
    • 1970-01-01
    • 2011-01-28
    • 2017-04-28
    • 2016-02-29
    • 1970-01-01
    相关资源
    最近更新 更多