我使用 C# 来自动化 excel 文件。我能够得到工作簿及其包含的工作表。 例如,如果我在 sheet1 中有两个列和 5 行。我想将占用单元格的范围设置为 A1:B5。我尝试了以下代码,但没有给出正确的结果。 # 列和# 行更大,单元格也为空。
Excel.Range xlRange = excelWorksheet.UsedRange;
int col = xlRange.Columns.Count;
int row = xlRange.Rows.Count;
还有其他方法可以用来获得该范围吗?
最佳答案
我遇到了和你非常相似的问题。实际起作用的是:
iTotalColumns = xlWorkSheet.UsedRange.Columns.Count;
iTotalRows = xlWorkSheet.UsedRange.Rows.Count;
//These two lines do the magic.
xlWorkSheet.Columns.ClearFormats();
xlWorkSheet.Rows.ClearFormats();
iTotalColumns = xlWorkSheet.UsedRange.Columns.Count;
iTotalRows = xlWorkSheet.UsedRange.Rows.Count;
恕我直言,当您从 Excel 中删除数据时,它会一直认为这些单元格中有数据,尽管它们是空白的。当我清除格式时,它会删除空白单元格并因此返回实际计数。
关于c# - 如何获取excel表格中被占用单元格的范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1284388/