如何将文件名复制到单元格,删除扩展名但保留格式

Posted

技术标签:

【中文标题】如何将文件名复制到单元格,删除扩展名但保留格式【英文标题】:How to copy file name to a cell, remove extension but preserve formatting 【发布时间】:2021-10-22 20:21:08 【问题描述】:

我有一个 excel VBA 脚本,我用它来将一堆报告(大约 100 个)合并到一个工作表中,对于我要添加的每个工作表,我希望文件名出现在一个列中,但是我需要要删除扩展名“.xlsx”,我可以这样做,但是当我删除扩展名时,单元格的格式会发生变化,例如一个文件可能被命名为 001.xlsx,我删除了 .xlsx,excel 删除了前导 00。如何删除文件扩展名但保留单元格格式?

这是我用来添加文件名的代码:

            rngFile.Value = wbkSrc.Name
            rngFile.Replace What:=".xlsx", Replacement:="", LookAt:=xlPart

非常感谢任何帮助,谢谢。

【问题讨论】:

【参考方案1】:

在单元格文本的开头添加单引号 (') 将使 Excel 将单元格内容视为文本,因此在删除“.xlsx”部分后“001”将保持原样。 cell.Value 将等于没有单引号的文件名。

【讨论】:

以上是关于如何将文件名复制到单元格,删除扩展名但保留格式的主要内容,如果未能解决你的问题,请参考以下文章

VBA 如何批量将单元格复制到另一个工作表中

从文本框中复制很多数字时保留数字格式

如何将条件格式从一个文档复制到另一个文档?

合并复制如何初始化发布和订阅

VBA代码将一个单元格的条件格式复制到未指定范围的单元格

如何去掉EXCEL单元格内最后一个空格符