目前我面临着困扰我很多的问题。我希望有人可以帮助我。我在同时使用 Office 2007(32 位)和 Office 2010(64 位)的大公司工作。编写宏以在整个公司中兼容对我来说是一项艰巨的任务(我以前从未在 VBA 中编程 - 实际上这个论坛对我帮助很大)。我的任务是在共享 Excel 工作表中维护一张大表。有几个宏和几个用户窗体。现在我将简要描述这个问题:工作表包含两列日期格式(开始日期和结束日期)。这两个值都被导入到用户窗体的文本框的列表单中(命令按钮午餐 MsCal - 导出到类 - 用日期填充这些文本框)。我只需要在两列中都将日期格式设置为 mm/dd/yyyy,以便执行过滤和其他操作。当使用与英语不同的本地化的工作人员更新此值时,美国日期输入为 dd.mm.yyyy。这使得基于日期的适当过滤变得不可能。我试图通过以下方式更改格式:
UserForm1.TextBox10.Value = Format(Calendar1.Value, "mm/dd/yyyy")
但这段代码不知何故行为不端。在某些机器上它可以工作,在其中一些机器上它不工作。这就是让我头疼的地方。我现在应该如何进行?有没有办法强制 excel 在工作表中使用相同的日期格式并忽略 Windows 中的本地化设置?员工不想将本地化更改为美国英语,因为他们要么习惯了他们的格式,要么需要它用于其他应用程序。有没有办法仅在此工作表打开时临时更改本地化?任何建议将不胜感激。在此先感谢彼得