繁体   English   中英

在Excel 2010上编译错误,但在Excel 2003上不编译

Compile error on Excel 2010, but not on Excel 2003

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我无法解释此简单代码有什么问题。 它可以在Excel 2003上完美运行,但在Excel 2010中显示:

编译错误:未定义功能子。

谁能解释为什么Excel 2010出现错误?

Sub Test_File_Opened()
    If IsFileOpen("D:\Test.xls") Then
        MsgBox "File is open!"
    Else
        MsgBox "File is closed!"
    End If
End Sub
2 个回复

IsFileOpen函数不存在于您的代码中,这是唯一可能的解释。 您必须在VBA模块中的某个位置声明它。

这里有几件事要检查

  • 您拼错了程序名称吗?
  • 尝试从另一个项目调用过程,而无需在“引用”对话框中显式添加对该项目的引用。
  • 指定对调用过程不可见的过程。
  • 声明不在指定库或代码资源中的Windows动态链接库(DLL)例程或Macintosh代码资源例程。

IsFileOpen不是VBA内置函数。 它可能来自此Microsoft页面 (由rusk在评论中指出),并且该代码仅需要在新的Excel 2010工作簿中可用,例如粘贴到模块中。

为什么在Excel 2003工作簿中但在2010工作簿中可用? 可能是各种各样的东西。 在另一个模块中,您没有将其复制到新工作簿中。 它是当前当前安装的Excel 2010中未提供的加载项等。您没有提供足够的信息来正确诊断问题,但是如上所述,无论如何,补救措施是相同的。

1 CreateObject可在Excel 2003中工作,但不能在2010中工作

本质上,代码只是在充满信息的目录中创建一个文本文件。 就像标题所示,我可以在excel 2003中打开工作表,它将正常运行,但是如果在2010年运行,则会弹出一个错误,提示运行时错误“ 70”权限被拒绝。 这是代码: 此后有一个循环,但它包含与上述相同的a.writeline代码 ...

2 Excel 2003中的代码错误

我有一个代码在excel 2007上运行得非常好,但它没有运行excel 2003.它给出了“complie错误”,这一行变成了红色。 你的建议会有很大帮助。 谢谢。 如果您需要我方提供的任何信息,请通知我。 这是我的完整代码: ...

3 Visio 2003/2010页面列表到Excel

有没有一种方法可以在Visio工作表中获取和导出多个页面名称? 我不想导出页面中的对象,只想获取页面列表。 示例:文件Accounting_Layout.vsd包含以下页面:输入,输出,报告和未使用。 如何获取此列表并导出到Excel? ...

4 将Matlab数据导出到Excel 2003 2003

我正在尝试将数据从Matlab导出到excel,我知道您可以使用xlswrite来完成此操作,但是我设法xlswrite起作用,但是当我增加数据的行数/行数时,我得到以下错误Excel returned: Error: Object returned error code: 0x800A03EC ...

5 适用于Excel 2010/2007/2003的datepicker

我需要VBA for Excel中的日期选择器。 我遇到了这个问题,因为Excel 2010 64位没有日期选择器,在Excel 2007/2003中可以很好地工作。 我正在寻找可用于商业目的的免费控件。 任何帮助将不胜感激。 谢谢 ...

6 Office Excel 2010在2003年不会读取

我在计算机上以及生成Excel文件的项目中安装了MS Office Excel 2010。 我指定.XLS作为扩展名。 导出后,我遇到两个难题。 问题1.当我使用Excel 2010打开这些文件时,它询问一个问题: “您试图打开的文件,格式与文件扩展名指定的格式不同。 ...

2011-11-02 09:43:12 1 1094   excel
7 如何在Excel 2010中使用Access 2003?

我支持使用VBA在Access 2003中编写的旧版应用程序。 我们将系统更新到Office 2010,但Access除外,它将保留为2003版本。 (这是由于与我组织中其他组有关的几个因素。) 我们将Access用作从MS SQL和Sybase数据库中运行报告的前端。 其中一些报告 ...

8 Excel 2003,间歇性VBA错误

我有一个将VBA控件插入到工作表中的脚本,该脚本是通过单击按钮启动的。 有时,脚本可以无错误运行,并且可以正确100%运行。 有时,脚本在完成之前会停止,并显示“ Microsoft Visual Basic”错误: 运行时错误'-2147319764(8002802c)':对象' ...

9 Excel 2003中的Excel宏运行时错误428

我创建了一个xlt excel模板,该模板在Excel 2007中的兼容模式下可以正常工作,并且在兼容性检查中未显示任何错误。 该模板运行大量的宏,这些宏创建数据透视表和图表。 当同事尝试在excel 2003上运行相同的xlt时,他们会收到运行时错误428(对象不支持此属性或方法)。 ...

10 在Excel 2003中使用Excel 2010文档-VBA问题

我参与了在Excel 2010中编写用于数据分析的excel工作簿的工作。但是最近我发现需要在其中使用该文档的某些计算机运行Excel2003。我知道保存到时存在兼容性问题.xls格式请参见此处 ,但无法找到有关VBA代码更改的完整摘要,尤其是从2010到2003的更改方式(而不是相反)。 ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM