在Excel中使用VBA将特定列复制到NEW工作簿中

我在这个总菜鸟请温柔的大声笑。

我有两张工作簿,我只关心这个function的Sheet1。

工作表中有一堆列,我只需要列A和G的数据。我需要将这些列复制到一个新的工作簿。 我成功地使用了我在这个网站上find的下面的代码

Sub dural() Dim r1 As Range, r2 As Range Sheets(1).Select Set r1 = Range("A:A") Set r2 = Range("G:G") Set wbNew = Workbooks.Add r2.Copy Range("A1") r1.Copy Range("B1") End Sub 

这做了我所需要的,但我希望它自动创build并保存输出为一个新的文件,最好在一个特定的目录。 我不需要它打开并显示像上面的代码。 让我们把它叫做output.xlsx。 原始文件是SOURCE.xlsm

谢谢你的帮助:)

这样简单的事情:

 Sub dural() With Workbooks.Add ThisWorkbook.Sheets(1).Range("G:G").Copy .Sheets(1).Range("A1") ThisWorkbook.Sheets(1).Range("A:A").Copy .Sheets(1).Range("B1") .SaveAs "your path + filename here" .Close End With End Sub 

应该尽你所能

如果你还有任何问题,只要问:)