如何从工作簿中复制特定列,通过对话框复制并另存为新的excel文件?

问题描述 投票:0回答:0

我正在尝试构建一个 vba,它可以请求特定的工作簿和我想从中复制的列,使用保存对话框将其复制并保存为新的 excel 文件。

我只有下面的代码复制特定的栏目:

Sub Text()
Sheets("Sheet1").Range("B:B").Copy Sheets("Sheet2").Range("A:A")
Sheets("Sheet1").Range("D:D").Copy Sheets("Sheet2").Range("B:B")
End Sub

以及使用保存对话框将文件保存为 excel 的代码:

Sub new_excel_file()

Dim IntialName As String
Dim sFileSaveName As Variant
IntialName = "Sample Output"
sFileSaveName = Application.GetSaveAsFilename(InitialFileName:=InitialName, fileFilter:="Excel Files (*.xlsm), *.xlsm")

If sFileSaveName <> False Then
    ActiveWorkbook.SaveAs sFileSaveName
End If

[这是我的原始数据:][https://i.stack.imgur.com/BZRrV.png][1]

因此,如果我输入要从中复制的 excel 路径以及要复制的列:

[因此,如果我输入要从中复制的 excel 路径以及要复制的列:][https://i.stack.imgur.com/84B2f.png]

[运行宏后,它应该有以下结果并使用保存对话框将其保存为 excel 文件: ][https://i.stack.imgur.com/U26hA.png]

excel vba copy-paste
© www.soinside.com 2019 - 2024. All rights reserved.