Vba 将特定工作表从一个工作簿保存到特定文件夹中的另一个工作簿
我正在尝试将特定工作表从工作工作簿保存到另一个工作簿,并尝试将其保存到当前工作簿的路径中。保存选项应与dd.mm.yyyy一起保存 我尝试了下面的代码,在代码行中出现了应用程序定义的错误Vba 将特定工作表从一个工作簿保存到特定文件夹中的另一个工作簿,vba,excel,Vba,Excel,我正在尝试将特定工作表从工作工作簿保存到另一个工作簿,并尝试将其保存到当前工作簿的路径中。保存选项应与dd.mm.yyyy一起保存 我尝试了下面的代码,在代码行中出现了应用程序定义的错误 > newWB.SaveAs filename:=Path2 & Format(Now(), "yyyymmdd") & > myWorksheets(i), FileFormat:=xlsx 你能帮我找出哪里错了吗 Sub save() Dim myWorksheets() A
> newWB.SaveAs filename:=Path2 & Format(Now(), "yyyymmdd") &
> myWorksheets(i), FileFormat:=xlsx
你能帮我找出哪里错了吗
Sub save()
Dim myWorksheets() As String 'Array to hold worksheet names to copy
Dim newWB As Workbook
Dim CurrWB As Workbook
Dim i As Integer
Dim path1, Path2
path1 = ThisWorkbook.Path
Path2 = path1 & "\TT"
Set CurrWB = ThisWorkbook
myWorksheets = Split("Report", ",")
For i = LBound(myWorksheets) To UBound(myWorksheets) 'Go through entire array
Set newWB = Workbooks.Add 'Create new workbook
CurrWB.Sheets(Trim(myWorksheets(i))).Copy
newWB.SaveAs filename:=Path2 & Format(Now(), "yyyymmdd") & myWorksheets(i), FileFormat:=xlsx
newWB.Close saveChanges:=False
Next i
CurrWB.Save 'save original workbook.
End Sub
@Jenny-此代码将完成您在问题中提出的问题,它将把活动表保存为新文件;并且可以用作在代码中调用的函数。您可以更改“Rpt”以标识新工作簿的标题。当我编写vba代码时,我总是尝试按照我母亲对我说的“保持简单”
乍一看,我会说您传递的
FileFormat
参数不正确。还请记住,您的路径需要以反斜杠结束。这可能不是全部问题,但在提出新问题之前,请将Dim path1定义为String,path2定义为String
,通过选择有效的解决方案,总是抽出一些时间来结束你的老问题。您有太多未解决的问题。如果提供的解决方案无法解决您的问题,请始终在每个提供的解决方案下留下反馈。这是个好习惯。不遵循这一点的提问者很容易被许多专家忽视,因为他们提供的答案没有得到任何反馈。:)我会试着给你回电话
Application.DisplayAlerts = False
Dim wbPath As String
wbPath = ThisWorkbook.Path
ActiveSheet.Copy
ActiveWorkbook.SaveAs Filename:=wbPath & "\" & "Rpt" & " " & Format(Date, "yyyymmdd") & ".xlsx", _
FileFormat:=51, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, CreateBackup:=False
Application.DisplayAlerts = True