头疼啊,各位大侠来帮忙!新手求助,导入excel时老是提示“外部表不是预期格式”

happyshana 2011-09-08 04:05:02
新手,研究了好多天了,还是解决不了。
情况就是,我电脑里excel是2007,想生成一个2003的文件,1.xls.
用的方法是
workBook.SaveAs(fileName, missing, missing, missing, missing, missing, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlNoChange,
missing, missing, missing, missing, missing);
生成没有问题,成功了。

现在想用select查询下,open()的时候,结果总是报错。

从网上查了好久,没有具体的解决办法。请问各位大侠,该怎么解决呢?
...全文
101 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
happyshana 2011-09-09
  • 打赏
  • 举报
回复
我没写错啊,不是这个的问题
posefooler 2011-09-09
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 net_lover 的回复:]

2种的写法不同的
excel2003
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\MyExcel.xls;Extended Properties="Excel 8.0;HDR=Yes;IMEX=1";

excel2007
Provider=Microsoft.ACE.OLEDB.12.0;Data Source=c:\myFolde……
[/Quote]
03的用8.0的,07的用12.0的
happyshana 2011-09-09
  • 打赏
  • 举报
回复
5555,这样是好麻烦,实在不好意思对客户张口啊,觉得应该还有别的解决方法吧
Name_456 2011-09-09
  • 打赏
  • 举报
回复
把exl 点击另存为2003版的在试下我出现这个问题都是这样做的.....
happyshana 2011-09-09
  • 打赏
  • 举报
回复
读取时候的程序,应该没有问题吧,我就是把1.xls重新保存下,就能读了,但是这样太麻烦了。我想直接生成了就能读取。
happyshana 2011-09-09
  • 打赏
  • 举报
回复
public static string strCon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\\1.xls;Extended Properties='Excel 8.0;HDR=No;IMEX=1'";
happyshana 2011-09-09
  • 打赏
  • 举报
回复
生成的时候,就是fileName=“D:\\1.xls”,是不是就是2003?我也不太明白了
小笨熊 2011-09-08
  • 打赏
  • 举报
回复
学习下。。。
孟子E章 2011-09-08
  • 打赏
  • 举报
回复
另外,确认你存的真的是2003版本的
孟子E章 2011-09-08
  • 打赏
  • 举报
回复
2种的写法不同的
excel2003
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\MyExcel.xls;Extended Properties="Excel 8.0;HDR=Yes;IMEX=1";

excel2007
Provider=Microsoft.ACE.OLEDB.12.0;Data Source=c:\myFolder\myExcel2007file.xlsx;Extended Properties="Excel 12.0 Xml;HDR=YES";

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧