导入EXCEL表时,提示"找不到可安装的ISAM"怎么办?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了导入EXCEL表时,提示"找不到可安装的ISAM"怎么办?相关的知识,希望对你有一定的参考价值。
安装过了Microsoft Office 2003 和2007,都很好用。就是有时,一些软件需要导入EXCEL的文件时,会提示出现:尝试连接Microsoft Office Excel数据失败!【详细情况】找不到可安装的ISAM出现以上的情况,应该怎么解决呢?谢谢!
Microsoft.Jet.OLEDB.4.0好像不支持Excel,你可以用DAO来访问首先需要引用Microsoft DAO 3.6 Object Library
Dim DB As DAO.Database
Dim RS As DAO.Recordset
Set DB = OpenDatabase("d:\数据.xls", False, False, "Excel 8.0;")
Set RS = DB.OpenRecordset("文件$")
Set DataGrid1.DataSource = RS
找不到可插入的ISAM的好像就是不支持这种数据格式,
--抱歉,刚看了一下,Datagrid只支持ado的datasource,你如果非要用控件绑定的话,你可以Miscrosoft FlexGrid,它可以绑定dao的datasource
如果你只是为了显示,我建议你可以不用绑定的方式,在Form上放一个ListView控件,然后在ListView属性中把查看方式改成lvReport,增加列首(标题)和Excel的列一一对应。代码如下
Dim DB As DAO.Database
Dim RS As DAO.Recordset
Set DB = OpenDatabase("d:\数据.xls", False, False, "Excel 8.0;")
Set RS = DB.OpenRecordset("文件$")
Dim li As ListItem
ListView1.ListItems.Clear
Do Until RS.EOF
Set li = ListView1.ListItems.Add(, , (RS(0))
For i = 1 To RS.Fields.Count - 1
li.SubItems(i) = RS(i)
Next
RS.MoveNext
Loop 参考技术A
刚刚解决。暂时发现有四个可能性:
office安装不完整,前面已经有人提供解答
excel03的数据库未注册,在开始——运行对话框中输入:
Regsvr32 c:\\WINDOWS\\system32\\msexcl40.dll
进入控制面板——管理工具——数据源ODBC 查看用户DSN是否正确添加(我不知道是不是和上一步同一回事)
在卸载-安装过程中,原excel文件里的连接可能改变了。打开excel文件的表,连接选项卡——属性——点右上角小方块,连接属性——定义 对照这些内容是否和以往备份到服务器上的文件一致:
DSN=Excel Files;DBQ=D:\\基础库.xls;DefaultDir=D:\\;
DriverId=281;FIL=MS Access;MaxBufferSize=2048;PageTimeout=5;
string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + FilePath + ";Extended Properties='Excel 8.0;HDR=NO;IMEX=1';";//不能是11.0
OleDbConnection conn = new OleDbConnection(strConn);
conn.Open();
string strExcel = "select * from [sheet1$]";
OleDbDataAdapter da = new OleDbDataAdapter(strExcel, strConn);
DataSet ds = new DataSet();
try
da.Fill(ds);
catch (Exception ex)
throw new Exception("读取Excel失败:"+ex.Message);
return ds;
如果提示"找不到可安装的ISAM",通过google,有两个解决办法:
1、连接字符串问题
Extended Properties='Excel 8.0;HDR=NO;IMEX=1'
//HDR表示要把第一行作为数据还是作为列名,作为数据用HDR=no,作为列名用HDR=yes;通过Imex=1来把混合型作为文本型读取,避免 null值。
上句的左右两个单引号不能少。
2、只需注册 Excel ISAM即可
在“运行”对话框中输入回车即可:Regsvr32 c:\WINDOWS\system32\msexcl40.dll 参考技术C 注册Excel ISAM在“运行”对话框中:Regsvr32 c:\WINDOWS\system32\msexcl40.dll 查看原帖>>本回答被提问者采纳
Qt 编译好的 可执行文件 不能运行是怎么回事?
我用Qt Creator 编译程序能够通过并可以正确运行,也能生成可执行文件,但是双击生成的可执行文件却不能运行!请高手帮个忙!
缺少动态链接库,你的qt是动态编译的,根据提示上你qt的安装目录上考到你的exe文件夹里 参考技术A 应该是路径问题, 如果是资源找不到,那么需要将程序用到的文件复制到合适的位置. 如果是依赖的dll找不到,就在环境变量的path中加入所需的dll所在的位置,或者把它们复制到程序的当前位置.追问我在终端上运行这个可执行文件时,提示"找不到这个文件",但是我用Creator编译运行其他程序时无论是双击可执行文件还是在终端都没问题,唯独这个在设计界面时用到QT Designer的程序的可执行文件运行不了!
以上是关于导入EXCEL表时,提示"找不到可安装的ISAM"怎么办?的主要内容,如果未能解决你的问题,请参考以下文章
EXCEL 导入SQL2005 提示 找不到可安装的 ISAM。 (Microsoft JET Database Engine)
Microsoft.Jet.OLEDB.4.0 导入excel报"找不到可安装的ISAM"