按单元格C#中的值访问列名称

时间:2015-05-28 06:58:36

标签: c# excel

我正在编写代码来读取Excel文件并根据2列过滤数据。 1列是固定的,另一列是每月更改的。我的尝试是通过其中一个单元格的值捕获动态列的列名称(正在更改每月)。这可能吗?我的最终目标是执行以下代码。 (您需要列名称的地方)

 DataTable ObjFilteredTable = objDataView.ToTable(true, "Column1", "Column2");

由于

我已经看到很多样本,你可以根据列名获得单元格值。我需要其他方式。

2 个答案:

答案 0 :(得分:0)

这样的事情可以解决问题:

    static string GetMyColumnName(DataView objDataView, object YOURVALUE)
    {
        int colCount = objDataView.Table.Columns.Count;
        foreach (DataRowView rowView in objDataView)
        {
            for (int i = 0; i < colCount; i++)
                if (rowView[i] == YOURVALUE) // Check if cell value is the one you are looking for
                    return objDataView.Table.Columns[i].ColumnName;
        }
        throw new Exception("Column not found");
    }

YOURVALUE是您在谈到以下内容时所谈到的价值:&#34;我的尝试是通过其中一个单元格的值来捕获动态列的列名称&#34;

答案 1 :(得分:0)

我认为更简单的方法是,通过索引访问列。

试试这个。

1.将完整的Excel行读入数据表。

2.获取动态列名称的索引。