【问题标题】:What is Excel 4.0 Macro?什么是 Excel 4.0 宏?
【发布时间】:2017-05-15 02:27:00
【问题描述】:

当我尝试插入新工作表时,我得到了多个可供选择的选项。一个显然是“工作表”,另一个叫做“MS Excel 4.0 宏”。所以我选择了“MS Excel 4.0 Macro”,它看起来和一个新的工作表完全一样。我只是好奇普通工作表和 MS Excel 4.0 宏表有什么区别?

【问题讨论】:

  • Excel 4.0 宏表用于编写旧式 Excel 宏(不是 VBA)。只需删除该表并假装您从未见过。
  • 我讨厌创建它的快捷方式是 Ctrl-F11,我有时会不小心按下它而不是 Alt-F11。 :(

标签: excel macros excel-4.0


【解决方案1】:

历史
从第一个版本开始,Excel 就支持最终用户对宏(重复性任务的自动化)和用户定义的函数(Excel 内置函数库的扩展)进行编程。在早期版本的 Excel 中,这些程序是用宏语言编写的,其语句具有公式语法并驻留在专用宏表的单元格中(在 Windows 中以文件扩展名 .XLM 存储)。XLM 是 Excel 的默认宏语言。 Excel 4.0。从版本 5.0 Excel 开始,默认情况下在 VBA 中录制宏,但对于 5.0 版本,XLM 录制仍然是一个选项。在 5.0 版之后,该选项已停用。所有版本的 Excel(包括 Excel 2010)都能够运行 XLM 宏,但 Microsoft 不鼓励使用它们。

https://en.wikipedia.org/wiki/Microsoft_Excel

MS Excel 4.0 宏表的目的是运行旧版 Excel 4.0 宏。微软在 1993 年用 VBA 取代了 Excel 4.0 宏,但它们仍然可以运行。现在(大约 30 年后),这是恶意方(黑客)最广泛使用的。

例如,您可以在A1:A2中输入以下内容:

=EXEC("calc.exe")
=HALT()

然后,要运行它(打开计算器),您需要右键单击 A1 并选择 Run... -> Run。将计算从单击的单元格向下的所有公式。

PDF containing the complete Excel 4.0 macro functions reference

【讨论】:

    【解决方案2】:

    回答。

    旧方法是将宏记录为事件链,不使用 VBA。

    我的故事。

    我大量使用了旧式宏,而且我有数百个。当微软将宏转移到 VBA 时,他们没有提供转换旧宏的方法,所以我一眼就失去了所有这些。我的一个宏非常复杂,在 Mac SE 上运行起来就像做梦一样。我认为它在科学价值方面非常宝贵,因为它使用地下水含水层中的氚观测值以及巨大的输入函数数据表来工作。它使用几个数学模型计算了地下水的停留时间,并更新了五个图表,这些图表绘制了用户为使用的模型引入的输出数据。我通过 EMU 仿真硬件、现代 Mac 和现代 Windows PC 使用复杂的过程将此宏文件保存到 Windows PC,但是该文件不会像在引入 VBA 之前编写的那样运行。这是一个如此可悲的损失,甚至会将损失视为犯罪。

    在我在某个地方备份之前,请不要删除这个故事。当我把它贴在更合适的地方时,我保证会删除它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-09-02
      • 2012-05-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多