系统使用win10 64位 vs2013
因为最开始使用了OLEDB,在导入2003(.xls)版本文件时,win10 64位可以使用, 但是如果使用2007(.xlsx)以上的文件就会提示:注册“microsoft.ACE.oledb.12.0”提供程序,各种百度尝试没有解决
最后发现是从做电脑系统以后安装了office2010 64位的,下载了AccessDatabaseEngine 安装时提示有安装x64的office
最后卸载了,用了之前一版的office2010 没有提示注册“microsoft.ACE.oledb.12.0”提供程序,
但是新的问题又来了,
OleDbConnection conn = new OleDbConnection(connstring)
conn.Open(); 在这个open时 又报错,提示未指定错误。
strConn = string.Format("Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0};Extended Properties='Excel 12.0;HDR=No;IMEX=1;'", excelName);
找不到原因
最后使用了NOPI,win10 64位导入.xlsx文件读取数据完成
感谢大神的这篇文章,代码直接可用,以下是地址