阅读excel文件 - >获取复选框值

时间:2011-10-06 13:28:44

标签: c# excel oledb

所以我想我现在已经尝试了一切。我试图从excel表中获取radiobuttons和复选框的值。我的第一种方法是使用Excel数据读取器:http://exceldatareader.codeplex.com/。带有复选框的单元格呈空。

如果我使用OLEDB也一样;

string filename = @"C:\\" + "uploads\\SmartAuditSheet.xls";
        string connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" +
                                      "Data Source=" + filename + ";" +
                                      "Extended Properties=Excel 8.0;";

        OleDbDataAdapter dataAdapter = new OleDbDataAdapter("SELECT * FROM [Sheet1$]",    connectionString);

        DataSet myDataSet = new DataSet();
        dataAdapter.Fill(myDataSet, "BookInfo");
        DataTable dataTable = myDataSet.Tables["BookInfo"];

        gv.DataSource = myDataSet;
        gv.DataBind();

请帮助。

3 个答案:

答案 0 :(得分:1)

我建议您尝试以下内容。

 OLEObject ole = (OLEObject)excelWorksheet.OLEObjects("Checkbox1"); 

答案 1 :(得分:0)

我建议使用一些第三方库 - 有几个(免费和商业)不需要安装Excel:

  • OpenXML 2.0(来自MS的免费图书馆)可用于阅读/修改.xlsx的内容,以便您可以根据需要进行操作

  • EPPlus(免费库)适用于XLSX

  • 一些(商业)第三方库带有网格控件,允许您在应用程序中使用excel文件(大多数不仅可以使用XLSX,还可以使用XLS)(Winforms / WPF / ASP)。 NET ...),如SpreadsheetGearAspose.CellsFlexcel等。

答案 2 :(得分:0)

bool state = Convert.ToBoolean(ws.OLEObjects("Checkbox1").Object.value());