VBA,从范围保存Excel文档,但增加了额外的空间

所以我有一个运行一堆有点复杂的macros的文件,我希望第一步是用不同的名字保存文件,这样就可以重新使用带有macros的文件。 我遇到的问题是它将文件的名称保存到单元格中的值,但它在文件的名称前后添加一个空格。 我能解决这个问题吗?

Sub SaveWorkbook() 'Pick range where file name is stored Saveasname = Range("L2").Value 'Save the workbook ActiveWorkbook.SaveAs "I:\MyFilePath\ " & Saveasname & " .xlsm" End Sub 

我还应该提到,我试图删除saveasname周围的额外空格,但是它们要么自动回来,要么macros不会运行。 :/ 任何的意见都将会有帮助。


更新:感谢您的答案! 我发现我是如何搞砸的。 我添加了另一个字段到我想要的文件的名称,它有非法字符(冒号),所以我修复了这一切,现在一切正常。 感谢您的帮助!

FileNamestring中删除这个空格应该工作;)

 Sub SaveWorkbook() 'Pick range where file name is stored Saveasname = Range("L2").Value 'Save the workbook ActiveWorkbook.SaveAs "I:\MyFilePath\" & Saveasname & ".xlsm" End Sub 

“删除s​​aveasname周围的空格”不应该意味着改变这个:

 ActiveWorkbook.SaveAs "I:\MyFilePath\ " & Saveasname & " .xlsm" 

对此:

 ActiveWorkbook.SaveAs "I:\MyFilePath\ " &Saveasname& " .xlsm" 

它应该意味着改变它:

 ActiveWorkbook.SaveAs "I:\MyFilePath\" & Saveasname & ".xlsm" 

然后按照您的预期工作。