大家好,我不知道从哪里开始,我所追求的是我有 5 个 Excel 工作簿加载到 Sharepoint 上,这些工作簿都有不同的人可以访问它们。现在每个工作簿上都有 3 张工作表,我想要的是一个主 Excel 工作簿,上面只有 1 张工作表,称为主数据,它从每个称为假期、疾病、请求、加班、工作的工作簿中仅获取 1 张工作表,然后复制它们将它们放在工作表上的下一个位置并始终更新。我需要复制的工作表都具有相同的行数和列数,但我需要保持相同的格式和变量。或者有没有一种方法可以让我在 Sharepoint 上只链接一张纸并将其放入母版中。
我尝试通过自动录制宏来做到这一点,但没有成功。
请参阅:https://learn.microsoft.com/en-us/office/dev/scripts/resources/vba-differences
是否有特定需要使用VBA?我建议使用 PowerAutomate 或 PowerQuery:https://macrordinary.ca/2020/07/13/where-does-vba-fit-in-2020/
如果您绝对需要使用 VBA,这里有一个基于上面源代码的脚本,可帮助您入门:
Sub CopySheetsFromSharePoint()
Dim SourceWorkbook As Workbook
Dim TargetWorkbook As Workbook
Dim SharePointURL As String
Dim FileURL As String
SharePointURL = "https://SharePointSiteURL/"
FileURL = SharePointURL & "FilePath/FileName.xlsx"
Set SourceWorkbook = Workbooks.Open(FileURL)
Set TargetWorkbook = ThisWorkbook
SourceWorkbook.Sheets("SheetName").Copy After:=TargetWorkbook.Sheets(TargetWorkbook.Sheets.Count)
SourceWorkbook.Close SaveChanges:=False
End Sub
我强烈建议您使用PowerAutomate,它与O365生态系统更好地集成。