日期:2014-05-17  浏览次数:20948 次

C#给Excel插入数据报Microsoft Office Access 数据库引擎找不到对象“BlogClass”。请确定该对象存在,并正确拼写其名称和路径名
如题,运行时报错:Microsoft Office Access 数据库引擎找不到对象“BlogClass”。请确定该对象存在,并正确拼写其名称和路径名。我很确定Excel中是有BlogClass的。路径是绝对路径,也没有任何问题,求高手帮忙!
        /// <summary>
        /// 把数据插入到Excel表中
          /// </summary>
        /// <param name="sql">Sql语句</param>
        /// <param name="Tablename">sheet名或者表名</param>
        /// <returns></returns>
        public static string InsertDataToExcel(string sql, string Tablename)
        {
            string result = "";
            string connstr = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + @"C:\Users\fz001\Desktop\Personalblog\Personalblog\Excel\PBlog.xlsx" + ";Extended Properties='Excel 12.0 Xml;HDR=YES'";
            OleDbConnection oleConn = new OleDbConnection(connstr);
            try
            {
                oleConn.Open();
                DataTable dt = oleConn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables_Info, null);
                bool existTable = false;
                foreach (DataRow dr in dt.Rows)//检查是否有信息表                
                {
                    if (dr["TABLE_NAME"].ToString() == Tablename+"$")//要加个$号                        
                        existTable = true;
                }
                if (!existTable)
                {
                    result = "插入失败,不存在表" + Tablename;
                }
                else
                {