使用VBA保存具有与单元格对应的名称的文件

背景:我正在使用在不同工作簿之间传输数据的macros。 其中一个工作簿基本上是一个数据pipe道,不会改变。 另一个工作簿是填充的空白表单,保存为特定的名称,然后重新使用。

问题:正在保存的工作簿需要复制pipe道工作簿中单元格的名称。

我在这里find一个类似的post。 可悲的是,答案给我一个语法错误,我不知道为什么。

Sub TestTestTestTest() ' ' TestTestTestTest Macro ' ' Dim name As String name = Cells("Contents", A1) ActiveWorkbook.SaveAs() Filename:=name********** End Sub 

星号是语法错误的来源。

你考虑过文件path吗? 或者你正在从哪个工作簿中获取A1?

我假设内容是一个表,A1是文件名(未来的人看这个内容不是工作表)

 Dim name As String name = range("A1").value ActiveWorkbook.SaveAs Filename:=name 

只是为了你的知识做同样的细胞,你可以使用

 cells(1,1).value 

单元格预计列/行的数值

指向您可以使用的工作表

 sheets("sheet1").range("A1").value sheets("sheet1").cells(1,1).value 

你可以通过使用缩短这一切

 ActiveWorkbook.SaveAs Filename:=range("A1").value 

你必须删除括号:

 ActiveWorkbook.SaveAs Filename:=name 

或者如果你想使用括号,你需要把它们的参数,并添加关键字Call在开始:

 Call ActiveWorkbook.SaveAs(Filename:=name)