我对VBA并不太熟悉,所以希望有人可以帮助我。我已经四处搜索了一个VBA宏,我可以根据自己的需要进行编辑,但没有一个能够正常工作。
我试图将我的工作表复制到目录中的所有工作簿中。例如,我想要工作簿中的工作表"模板"使用"每日"的表/当前表到我在文件夹中的所有工作簿或我在代码中选择的文件夹中。通过这种方式,我可以轻松地将工作表复制到工作簿中,而无需手动操作数百次。
但是我不知道从哪里开始,我所看到的那个似乎对我来说效果不佳。
答案 0 :(得分:1)
打开模板工作簿,将正确的文件夹位置分配给loopFolder,然后尝试:
Sub copyWorksheet()
'this sets your template workbook/worksheet
Dim copyWB As Workbook
Dim copyWS As Worksheet
Set copyWB = Workbooks("Template")
Set copyWS = copyWB.Sheets("Daily")
'this creates a collection of all filenames to be processed
Dim loopFolder As String
Dim fileNm As Variant
Dim myFiles As New Collection
'''don't forget the backslash before the final double-quote below
loopFolder = "C:\Documents\desiredFolder\"
fileNm = Dir(loopFolder & "*.xlsx")
Do While fileNm <> ""
myFiles.Add fileNm
fileNm = Dir
Loop
'this loops through all filenames and copies your copyWS to the beginning
Dim wb As Workbook
For Each fileNm In myFiles
Set wb = Workbooks.Open(fileName:=(loopFolder & fileNm))
copyWS.Copy after:=wb.Sheets(1)
wb.Save
wb.Close
Next
End Sub