excel - 重命名 Excel 工作表:名称超过 31 个字符错误
问题描述
下面重命名单个工作簿中的所有工作表。
我收到此错误:
我认为这是由于超出了字符数限制。我有大约 300 个工作表,所以我想做一个If
声明,如果LEN
名称大于 31,那么它只用前 30 个字符命名文件,其余的则保留。
此外,如果有类似的字符/,\,?,*[,]
,则应将其替换为空。
Sub RenameSheet()
Dim rs As Worksheet
For Each rs In Sheets
rs.Name = rs.Range("B2")
Next rs
End Sub
解决方案
使用左函数:
Sub RenameSheet()
Dim rs As Worksheet
For Each rs In Sheets
Debug.Print rs.Range("B2") 'print file name before creating file
rs.Name = Left(rs.Range("B2"), 30) 'first 30 chars only
Next rs
End Sub
推荐阅读
- python - 使用 python 请求从 Nextcloud 下载目录 (WebDav)
- python - 如何使用 Python 正确创建 JSON 文件?
- java - 关于复合运算符 Java 的转换问题
- jquery - 我如何在图表中同时选中和取消选中一个值
- javascript - ES6 / Lodash,如何检查对象是否包含给定请求的特定值?
- user-interface - 如何在 Flutter 中调用上滑面板?
- python - WIN10 或 ADB:显示已连接的 Android 设备
- java - Spark 提交无法运行访问 AWS S3 的 Java Spark 作业 [NoSuch 方法:ProviderUtils.excludeIncompatibleCredentialProviders]
- javascript - 显示 jquery 结果,数据在那里但不显示
- php - 在我的表单中单击按钮的问题