c# - 如何获取excel表格中被占用单元格的范围

标签 c# excel automation

我使用 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/

相关文章:

c# - 3D 中两个矩形之间的交集

c# - XAML 图像被截断

php - 如何使用 PHP 将数据添加到现有的 Excel 文件?

excel - 如何获得一个号码并将其分成多个组

vba - 跨不同格式查找多头

用于创建企业应用程序文档的 Java 工具

c# - Winforms 中的后台工作人员不更新 TextBox

c# - 如何保护 ASMX 文件中的 Web 服务?

php - PHP 中的定时任务(类似 cron)

tfs - 工作项是否可以(或需要)在 TFS 中对构建进行排队?