excel - 与语言无关的方式来引用 "Sheet"?

标签 excel localization vba

我的一个 friend 在一家保险公司担任分析师,他使用 Visual Basic for Applications (VBA) 编写脚本。

由于她的公司在不同的欧洲国家设有办事处,因此她需要使脚本尽可能与语言无关。

最近出现的一个问题是如何处理 Excel 文档并引用工作表(例如 Sheet1、Sheet2),而无需将该术语翻译为主要欧洲语言。

是否有人知道 Excel 是否提供了一个常量列表,无论 Windows/Excel 的本地化版本如何,她都可以使用该常量列表来访问不同的信息?

谢谢。

最佳答案

切勿使用工作表的硬编码名称在 VBA 中引用它们。

Dim s As Worksheet

For Each s In ActiveWorkbook.Sheets
  DoSomethingWith s
Next s

Set s = ActiveSheet
DoSomethingWith s

Set s = ActiveWorkbook.Sheets.Add()
DoSomethingWith s

Dim i As Long

With ActiveWorkbook.Sheets
  For i = 1 To .Count
    DoSomethingWith .Item(i)
  Next i
End With

然而,在单元格引用中,使用实际的工作表名称是不可避免的。这些引用可以根据 VBA 的需求构建。 Excel 会自动使现有引用(在单元格函数中)保持最新。

关于excel - 与语言无关的方式来引用 "Sheet"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1393558/

相关文章:

vba - VBA 中的哈希表/关联数组

c# - 如何在 C# 中实现 Excel Solver 功能?

vba - 键入时在 excel 中进行搜索

razor - MVC4 本地化。从 View 访问 resx

ios - Swift : Main. Storyboard本地化失败

excel - 在 VBA excel 2016 64bit 中替代 Treeview

vba - 如何为所有最终用户执行 Excel VBA 自动化

vba - 在关闭工作簿时提示宏,但如果用户按 "No"则终止关闭

c# - 通过 OleDb 使用 Microsoft Access 数据库引擎将 DataTable 插入 Excel

java - 如何在 Java 中检测当前用户的文本方向首选项?