在64位计算机上从VFP9调用Excel

时间:2016-07-21 14:47:32

标签: excel 64-bit visual-foxpro

我有一个VFP9应用程序,它使用Automation生成Excel文件,从:

开始
**oExcel = CREATEOBJECT(“Excel.Application”)
oWorkbook = oExcel.Workbooks.Add()**
. . .

正在使用Excel 2013。然后填充,格式化并保存工作表。这在Windows 7 32位计算机上运行良好。但是,在Windows 7 64位计算机上,某些指令失败。特别是:

**oworkbook.SaveAs(<NewFilename>)**

失败,显示消息“无法获取工作簿类的SaveAs属性”

作为一种解决方法,我在创建Excel对象之前创建,然后调用:

**oworkbook.Save ()**

这很有效。让其他用户体验过这一点;在64位计算机上运行时,是否存在使用VFP中Excel的任何其他限制。

由于

2 个答案:

答案 0 :(得分:0)

oWorkbook.SaveAs()和oWorkbook.Save()在64位机器上都没有任何问题(我假设你的意思是windows(7/8/10)64)。你的问题应该是别的。

答案 1 :(得分:0)

我遇到了同样的问题,但问题是用户使用的Excel版本与我不同。它不是64位与32位。我通过定义来解决它:

  #define xlNormal 39

设置工作簿的目标版本。这是一个关于枚举的页面:https://msdn.microsoft.com/en-us/library/office/ff198017.aspx

我还发现,在我保存到50的应用程序中,我必须打开,设置保存标志,然后执行我的工作然后说SaveAs。

祝你好运:)请考虑关闭这个问题。我认为你得到了两点。