如何使用 C# 获取 Excel sheet 中给定行的列数?

How to get the number of columns in the given row in Excel sheet with C#?

我正在使用 C# Interop Excel 并且我有一个 Excel sheet,第一行是列名,下面是一些数据。所以我想得到列名的数量,这意味着第一行中的列数。

我试过类似的东西,但它 returns 不正确的值:

int colCount = ((Excel.Range)xlWorkSheet.Rows[1]).EntireRow.Columns.Count;

知道如何将第一行作为一个范围,然后计算该范围内的列数吗?

试试这个...

var xlApplication = new Microsoft.Office.Interop.Excel.Application();
var xlWorkbook = xlApplication.Workbooks.Open("YourWorkbook.xlsx");
var xlWorksheets = xlWorkbook.Worksheets;
var xlWorksheet = xlWorksheets[1] as Worksheet;

var columnCount = xlWorksheet.Columns.Count;

... 或根据您的要求,根据使用情况获取一行中的最后一列(该示例针对第 1 行,如果需要则循环或指定您选择的特定行)。 ..

var columnCount = xlWorksheet.Cells[1, xlWorksheet.Columns.Count].End[XlDirection.xlToLeft].Column;