UsedRange在excel列中
你如何从UsedRange获得一列; 例如列A?
xlApp = new Excel.Application(); xlWorkBook = xlApp.Workbooks.Open("C:\\base.xls", 0, true, 5, "", "", true, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0); xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1); //range = xlWorkSheet.UsedRange; range = xlWorkSheet.get_Range("A") // reading from A1 to max of excel 65536?
@兰斯的回答:
range = xlWorkSheet.UsedRange.Columns["A:A", Type.Missing]
会给你UsedRange的第一列。 例如,如果包含数据的第一列是C列,则实际上将返回列C的已用部分。
要获取工作表中第一列的已使用行,请使用Intersect:
range = xlApplication.Intersect(xlWorksheet.UsedRange, xlWorksheet.Columns["A:A", Type.Missing])
如果列A不是UsedRange的一部分,这将返回null。
这会得到你A列,正如Joe指出的那样可能是你UsedRange中的第一列:
range = xlWorkSheet.UsedRange.Columns["A:A", Type.Missing]
这将使您获得您所在范围内的第一列,以便您可以通过编号引用:
range = xlWorkSheet.UsedRange.Columns[1, Type.Missing]