0

我想将数据插入到excel中。但是,excel 包含下拉列和普通列。我正在使用 oledb 提供程序将数据插入到 excel 普通列中,但我无法使用 oledb 插入下拉列值,有人能指出我正确的方向吗?

4

1 回答 1

0

通过使用 Excel Interop,您可以实现下拉列表。

下面是示例代码

        // Create an Excel object
        Microsoft.Office.Interop.Excel.Application excel = new  Microsoft.Office.Interop.Excel.Application();

        //Create workbook object
        string str = @"E:\test.xlsx";
        Microsoft.Office.Interop.Excel.Workbook workbook = excel.Workbooks.Open(Filename: str);
        Microsoft.Office.Interop.Excel.Worksheet worksheet1 = workbook.ActiveSheet;
        Microsoft.Office.Interop.Excel.Range range = worksheet1.get_Range("A1","A1");
        Microsoft.Office.Interop.Excel.DropDowns xlDropDowns;
        Microsoft.Office.Interop.Excel.DropDown xlDropDown;
        xlDropDowns = ((Microsoft.Office.Interop.Excel.DropDowns)(workbook.ActiveSheet.DropDowns(Type.Missing)));
        xlDropDown = xlDropDowns.Add((double)range.Left, (double)range.Top, (double)range.Width, (double)range.Height, true);
        xlDropDown.AddItem("item1",1);
        xlDropDown.AddItem("item2", 2);


        //Save the workbook
        workbook.Save();

        //Close the Workbook
        workbook.Close();

        // Finally Quit the Application
        ((Microsoft.Office.Interop.Excel._Application)excel).Quit();
于 2013-07-17T09:38:44.337 回答