已有56人关注
编程词典代码 导出Excel时出错 请老师指点一下谢谢。
发表在C#图书答疑 2010-09-12
是否精华
版块置顶:
[font color=#FF0000]从 IClassFactory 为 CLSID 为 {00024500-0000-0000-C000-000000000046} 的 COM 组件创建实例失败,原因是出现以下错误: 80070534。[/font]

我已引用了添加了引用 excel 11.0 obj

以下是导出按钮

        private void button4_Click(object sender, EventArgs e)
        {
            cls_exportExcel exportExcel = new cls_exportExcel();
            exportExcel.ExportDataGridview(dataGridView1, true);
        }



以下是类文件

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using System.Windows.Forms;


namespace IT部门管理系统
{
    class cls_exportExcel
    {

               /// <summary>
        /// 将DataGridView控件中数据导出到Excel
        /// </summary>
        /// <param name="gridView">DataGridView对象</param>
        /// <param name="isShowExcle">是否显示Excel界面</param>
        /// <returns></returns>
        public bool ExportDataGridview(DataGridView gridView, bool isShowExcle)
        {
            if (gridView.Rows.Count == 0)
                return false;
            //建立Excel对象
            Excel.Application excel = new Excel.Application();
            excel.Application.Workbooks.Add(true);
            excel.Visible = isShowExcle;
            //生成字段名称
            for (int i = 0; i < gridView.ColumnCount; i++)
            {
                excel.Cells[1, i + 1] = gridView.Columns[i].HeaderText;
            }
            //填充数据
            for (int i = 0; i < gridView.RowCount - 1; i++)
            {
                for (int j = 0; j < gridView.ColumnCount; j++)
                {
                    if (gridView[j, i].ValueType == typeof(string))
                    {
                        excel.Cells[i + 2, j + 1] = "'" + gridView[j, i].Value.ToString();
                    }
                    else
                    {
                        excel.Cells[i + 2, j + 1] = gridView[j, i].Value.ToString();
                    }
                }
            }
            return true;
        }            

 
 
    }

}

分享到:
精彩评论 3
小科_mrkj
学分:43 LV2
2010-09-13
沙发
读者朋友:
    您好,引用的是11.0的话,使用Microsoft.Interop.Office.Excel全名称创建Excel对象。
wufayou
学分:0 LV1
TA的每日心情
第五天
2023-03-18 21:24:17
2010-09-13
板凳
[font color=#FF0000]从 IClassFactory 为 CLSID 为 {00024500-0000-0000-C000-000000000046} 的 COM 组件创建实例失败,原因是出现以下错误: 80070534。
[/font]

            //建立Excel对象
            Microsoft.Office.Interop.Excel.Application excel = new Microsoft.Office.Interop.Excel.Application();
            excel.Application.Workbooks.Add(true);
            excel.Visible = isShowExcle;
小科_mrkj
学分:43 LV2
2010-09-14
地板
读者朋友:
    您好,这个应该是你的Excel组件在本机上没有注册造成的,跟代码没有关系,你可以运行一下我们编程词典中的例子看一下。
首页上一页 1 下一页尾页 3 条记录 1/1页
手机同步功能介绍
友情提示:以下图书配套资源能够实现手机同步功能
明日微信公众号
明日之星 明日之星编程特训营
客服热线(每日9:00-17:00)
400 675 1066
mingrisoft@mingrisoft.com
吉林省明日科技有限公司Copyright ©2007-2022,mingrisoft.com, All Rights Reserved长春市北湖科技开发区盛北大街3333号长春北湖科技园项目一期A10号楼四、五层
吉ICP备10002740号-2吉公网安备22010202000132经营性网站备案信息 营业执照