2014-03-06 96 views
2

所以,我想看看是否有辦法將二維excel範圍轉換爲集合。所以,不言而喻,我只想保留列A中的信息,即數組的第一個索引。我已經設法將球傳送到目前爲止...將Excel範圍轉換爲集合

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的(計數器,1)」拋出IndexOutofRangeException,當我嘗試在imediate窗口:Debug.Print(myArray(0, 1))我收到了錯誤信息Index '-1' for dimension '0' is out of range.什麼是什麼?

+0

不需要是myArray(0)(1)而不是myArray(0,1)? – RianBattle

回答

0

我其實想評論,但我沒有足夠的代表,所以我必須回答。

你不想開始與myArray的循環(0,1),而使用myArray的(1,1),因爲Excel數組索引是基於1而不是0

至於你轉換數組到列表我發現的唯一方法是循環。