我使用PTVS 2.1 Beta 2与IronPython 2.7.4 + Excel Interop访问Excel范围。如何查看/打印Excel范围中包含的数据?例如,如果我从A1到D4的范围,我如何查看4x4 2D数组(16个单元格)中包含的数据:
xlrange = worksheet.Range["A1", "D4"] # 4x4 2D array.
print xlrange.Value2 # Does not display the contents of the 2D array.
答案 0 :(得分:0)
Range.Value
(或Value2
)将返回一个数组,一旦跨越互操作边界,它将成为常规.NET数组(即从System.Array
派生的内容)。那些不知道怎么打印自己。但是,它们可以简单地转换为Python集合,可以。 E.g:
print list(xlrange.Value2)
然而,这将使阵列变平。如果要将其转换为列表列表,则需要手动迭代并自行构建列表,例如:
a = xlrange.Value2
print [[a[i, j] for j in range(0, a.GetLength(1))] for i in range(0, a.GetLength(0))]