我正在尝试熟悉OLEDB,我正在尝试用它读取xlsx文件。但是,当我尝试只读取一个单元格时,我无法正确解决它。在这个例子中,我试图简单地打印出第一个细胞(A1),但我得到了B3细胞。我错过了什么?
CODE:
private void button1_Click(object sender, EventArgs e)
{
string path =@"C:\Users\Martin\Desktop\CLUSTER\FILES\bla.xlsx";
String connectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + path + ";Extended Properties=Excel 12.0;";
OleDbConnection xlConn = new OleDbConnection(connectionString);
xlConn.Open();
OleDbCommand selectCmd = new OleDbCommand("SELECT * FROM [List1$]", xlConn);
OleDbDataAdapter xlAdapter = new OleDbDataAdapter();
xlAdapter.SelectCommand = selectCmd;
DataSet xlDataset = new DataSet();
xlAdapter.Fill(xlDataset, "XLData");
string variable = xlDataset.Tables[0].Rows[1][1].ToString();
MessageBox.Show(variable);
}
任何人都可以帮助我吗?在下一步中,我想用这个阅读整个xls表,所以我想,我必须设置范围,对吧?但是,如果不知道如何解决细胞困难的话。