vba - Excel 是否会用完表名?

标签 vba excel

我有一个 VBA 代码,它首先删除工作簿中的所有表格,然后在循环中在 Excel 中创建新表格,现在它一次生成大约 1000 个表格。目前我有以下表格。 Table59860171 作为表的名称。

Question is will excel at any point run out of unique names for a table ?

出现这个问题是因为我将一次又一次地运行相同的进程,所以这会是一个问题吗?

如果是的话我该如何避免?

最佳答案

是的,Excel 将用完表名称。 正如 Jules 所指出的(并且可以通过在 Excel 中尝试长名称来确认),Excel 表名称限制为 255 个字符(截至写作-我使用的是 Excel 2010)。因此,可用的表名数量是有限的。

但是,可能性的数量非常非常高。它并不是最多 255 个字符的字符串的所有字母和数字组合,因为某些组合是不允许的,例如也可以是单元格引用的名称(不允许表名称“T100”,因为它也可能意味着单元格 T100 )。

假设您继续将表从“Table1”命名为“TableN”: 您最大的表名称是

Table9999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999999

如果您每秒添加 1000 亿个表,则可以添加表

1,157,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407,407 days.

根据Sydney Observatory ,早在你用完表名之前,地球就会被太阳吞没。

<小时/>

请随意检查我的数学 - 如果我犯了错误,请纠正我:

9,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999,999 / (100,000,000,000 * 60 * 60 * 24)

关于vba - Excel 是否会用完表名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35215987/

相关文章:

excel - 使用 Excel VBA 宏捕获并保存同一文件中特定区域的屏幕截图

vba - 如果条件不满足但代码仍然执行

VBA正For循环,负步骤

c - 微软 Access : Search through Table for the same part of the String

excel - 使用 Trim 功能删除不需要的多余字符

excel - 如何根据VBA中数组的索引选择表中的列?

vba - 调用包含特定宏的每个按钮

vba - Excel VBA代码选择所有数据有时有效的单元格

excel - 在Excel VBA的立即窗口中显示日语文本

excel - 动态创建命名单元格