我正在尝试从一个文件中复制工作表,然后将其粘贴到已建立文件夹中的大约6个文件中的已建立选项卡中。我有这个代码,但它只适用于该文件夹中的第一个文件。它也出于某种原因创建了一个空白的工作簿。有什么建议?
using (var db = new PlaceDBContext())
{
Parallel.ForEach(db.Companies.Where(x => x.CheckedCompaniesHouse == true).ToList(),async (c) =>
{
c.CheckedCompaniesHouse = false;
await db.SaveChangesAsync();
});
}
答案 0 :(得分:0)
Sub LoopThroughFiles_Paste_Roster()
Dim wbk As Workbook'新工作簿,数据被添加到 Dim Filename As String Dim FirstFile As String Dim FileDirectory As String Dim x As Workbook Dim y As Workbook
设置x = Workbooks.Open(“复制文档1”) 设置y = Workbooks.Open(“复制文档2”)
'显示文件夹选择器对话框,以便用户可以选择文件夹 使用Application.FileDialog(msoFileDialogFolderPicker)
.Title = "Please select a folder"
.AllowMultiSelect = False
.Show
If .SelectedItems.Count = 0 Then
MsgBox "You did not select a folder"
Exit Sub
Else
FileDirectory = .SelectedItems(1) & "\"
End If
结束
'使用Dir检索文件夹中第一个文件的名称 Filename = Dir(FileDirectory) FirstFile =文件名
'循环浏览文件夹中的所有文件 '打开文件
Do Until Filename =“”
设置wbk = Workbooks.Open(FileDirectory& Filename,UpdateLinks:= False,密码:=“Password123”)
With wbk
x.Sheets("report").UsedRange.Copy
wbk.Sheets("roster").Range("a1").PasteSpecial
y.Sheets("Setup").UsedRange.Copy
wbk.Sheets("PTO Taken and Req").Range("a1").PasteSpecial
End With
'保存并关闭文件 '获取文件夹中的下一个文件 wbk.Close savechanges:= True Filename = Dir
循环
MsgBox“所有页面都已更新”
End Sub