我正在使用Microsoft Interop来读取数据。
在excel-sheet中,列名称类似于A,B,C,D,....,AA,AB,....等等。有没有办法阅读这个列名?
如果您需要任何其他信息,请告诉我。
此致 Priyank
答案 0 :(得分:11)
Excel.Application xlApp = new Excel.Application();
Excel.Workbook xlWorkbook = xlApp.Workbooks.Open("workbookname");
Excel.Worksheet xlWorksheet = xlWorkbook.Sheets[1]; // assume it is the first sheet
int columnCount = xlWorksheet.UsedRange.Columns.Count;
List<string> columnNames = new List<string>();
for (int c = 1; c < columnCount; c++)
{
if (xlWorksheet.Cells[1, c].Value2 != null)
{
string columnName = xlWorksheet.Columns[c].Address;
Regex reg = new Regex(@"(\$)(\w*):");
if (reg.IsMatch(columnName))
{
Match match = reg.Match(columnName);
columnNames.Add(match.Groups[2].Value);
}
}
}
这会将每个列名称放在List<string>
中,然后您可以将其绑定到下拉框。
答案 1 :(得分:-1)
您还可以按索引读取列
让您的Excel工作表对象为“excelWorksheet”,然后您可以将其作为
进行访问用于设置您可以使用的值
excelWorksheet.Cells [rowindex,columnindex] .Value =“test”;
获取可以使用的值
string result = excelWorksheet.Cells [rowindex,columnindex] .Value;
请记住,字段是动态生成的,因此在编写代码时可能会显示错误,但忽略了
例如,您要在Excel工作表第1行和第1行中设置文本第2栏
excelWorksheet.Cells [1,2] .Value =“test”;
我用过它&amp;它完美地运作