Excel VBA:如何将单个文件夹中具有相同布局的多个 Excel 文件合并到单个工作表中?

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

因此,我想创建一个 Excel VBA,将 Outlook 文件夹的所有附件保存到单个 Excel 文件中(所有文件将具有相同的布局,但数据不同),然后将该文件夹中的 Excel 文件合并到活动工作表中.

我已经成功将所有附件保存到一个文件夹中。但是,我未能将这些文件合并到一张纸中。你能帮忙吗?

非常感谢

对于问题的第二部分,我尝试了几种方法,但没有成功。这是我的代码的第一部分:

Option Explicit

Sub IKDISKETI()

Dim ol As Outlook.Application
Dim ns As Outlook.Namespace
Dim fol As Outlook.Folder
Dim i As Object
Dim mi As Outlook.MailItem
Dim at As Outlook.Attachment

Set ol = New Outlook.Application
Set ns = ol.GetNamespace("MAPI")
Set fol = ns.Folders(1).Folders("IKDISKET")

For Each i In fol.Items

If i.Class = olMail Then

Set mi = i

If mi.Attachments.Count > 0 Then

Debug.Print mi.SenderName, mi.ReceivedTime, mi.Attachments.Count

For Each at In mi.Attachments

Debug.Print vbTab, at.DisplayName, at.Size
at.SaveAsFile "C:\IKDISKET\" & at.Filename

Next at

End If

End If

Next i

End Sub

Option Explicit
excel vba outlook
1个回答
0
投票

您可以自动化 Excel 将 Excel 文件合并为一个文件。为此,您需要打开每个文件并提取所需的数据。请注意,您可以使用复制和粘贴命令更快地复制所需信息。有关如何创建新的 Excel 应用程序实例和打开文件的更多信息,请参阅早期和后期绑定 (Visual Basic)

此外,如果您仅处理开放 XML 文档,则可以考虑使用 Open XML SDK,请参阅

欢迎使用 Open XML SDK 2.5 for Office

© www.soinside.com 2019 - 2024. All rights reserved.