以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  SaveToPdf 错误  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=125310)

--  作者:Grandraw
--  发布时间:2018/9/26 7:49:00
--  SaveToPdf 错误
老师好,
我们的foxtable版本是2018-9-9开发版。windows7 英文版,office365企业版最新版。
执行下面代码,每次都失败。

Dim Book As New XLS.Book("C:\\Users\\qs1\\Desktop\\FileMonitor\\J161018-999.xls")
Dim fl As String = "C:\\Users\\qs1\\Desktop\\FileMonitor\\J169.pdf"

Book.SaveToPDF(fl) \'保存为PDF文件

错误提示如下:
.NET Framework 版本:2.0.50727.8793
Foxtable 版本:2018.9.9.1
错误所在事件:自定义函数test
详细错误信息:
Exception has been thrown by the target of an invocation.
Unable to cast COM object of type \'Microsoft.Office.Interop.Excel.ApplicationClass\' to interface type \'Microsoft.Office.Interop.Excel._Application\'. This operation failed because the QueryInterface call on the COM component for the interface with IID \'{000208D5-0000-0000-C000-000000000046}\' failed due to the following error: Interface not registered (Exception from HRESULT: 0x80040155).

在论坛上搜索了所有帖子,除了重装操作系统,试了所有方法,包括升级foxtable,重装office365,删除注册表键值等。
实在不知道怎么办才好。特此求助。谢谢




--  作者:有点甜
--  发布时间:2018/9/26 8:52:00
--  
卸载重新安装32位的ms office 2010、2013、2016。
--  作者:Grandraw
--  发布时间:2018/9/26 12:44:00
--  
重装后换成了32位的office 365 (excel 显示是16.0版)
,同样的代码,错误信息改成如下:

Exception has been thrown by the target of an invocation.
Old format or invalid type library. (Exception from HRESULT: 0x80028018 (TYPE_E_INVDATAREAD))


图片点击可在新窗口打开查看此主题相关图片如下:acc.bmp
图片点击可在新窗口打开查看




谢谢老师

--  作者:Grandraw
--  发布时间:2018/9/26 13:07:00
--  
补充一下:
上述同样环境运行Excel VBA也遇到同样错误提示:

Exception has been thrown by the target of an invocation.
Old format or invalid type library. (Exception from HRESULT: 0x80028018 (TYPE_E_INVDATAREAD))

代码照抄帮助文件:
Dim App As New MSExcel.Application
Dim Wb As MSExcel.Workbook = App.WorkBooks.Add
Wb.WorkSheets(1).name = "hhh"
Wb.WorkSheets(1).range("A1").Value = "hhh123"
Wb.SaveAs("C:\\123.xls")
App.Quit



--  作者:有点甜
--  发布时间:2018/9/26 14:32:00
--  

要我说多少次?

 

卸载重新安装32位的ms office 2010、2013、2016。


--  作者:Grandraw
--  发布时间:2018/9/27 5:32:00
--  
老师的话好难懂,我已经重装了32位的office 365. 最新版不正是对应excel 2016版吗?
我不是已经说了,最初的问题在重装后已经消失,但又出来了新的错误提示。提示信息在上面也给您了。

难道还需要我们把正版程序卸掉,再买个2013或者2010的装上才可以? 
还是我们的foxtable不支持office 最新版一定要退回到某个特定的版本号才可以? 

--  作者:Grandraw
--  发布时间:2018/9/27 5:36:00
--  
另外忘了说,我的office365是上周刚买的。原来我电脑上装的就是32位office 2013英文版正版。当时测试运行Excel VBA,也是过不去。错误提示信息一样。


--  作者:Grandraw
--  发布时间:2018/9/27 5:43:00
--  
另外,我上面说的excel 16.0版是微软内部版本号,在excel信息里面显示的。上网查了一下对应excel 2016版。你说的office 2013内部版本号应该是15.0.
--  作者:Grandraw
--  发布时间:2018/9/27 5:45:00
--  

图片点击可在新窗口打开查看此主题相关图片如下:acc.bmp
图片点击可在新窗口打开查看

--  作者:Grandraw
--  发布时间:2018/9/27 5:57:00
--  
来自网上的excel版本对比:

图片点击可在新窗口打开查看此主题相关图片如下:asdf.png
图片点击可在新窗口打开查看


[此贴子已经被作者于2018/9/27 5:57:43编辑过]