Excel从电子邮件收件箱到SQL Server数据库



我必须将数据从Excel导入到SQL Server数据库中。

我每天都通过电子邮件获取Excel文件。我必须将它们从电子邮件中取出并将内容放入数据库中。另外,我想自动化它而不是手动执行。

我正在考虑以下想法:

  1. 从收件箱中取出电子邮件附件(使用某些工具等的自动化过程)并将其保存为O:驱动器(然后从那里拉入数据库很简单)

  2. 借助任何可用的工具(开源),直接从收件箱将Excel内容放入SQL Server。

我希望这对我正在做的事情是有意义的。

有人可以告诉我如何自动化吗?

谢谢 美联社

您可以在此处使用VBA处理所有内容。

1)从Outlook下载附件。

Public Sub SaveAttachmentsToDisk(MItem As Outlook.MailItem)
Dim oAttachment As Outlook.Attachment
Dim sSaveFolder As String
sSaveFolder = "C:UsersDT168Documentsoutlook-attachments"
For Each oAttachment In MItem.Attachments
oAttachment.SaveAsFile sSaveFolder & oAttachment.DisplayName
Next
End Sub

2) 将数据从Excel文件加载到SQL Server中。

Sub InsertARecord()
Dim cnt As ADODB.Connection
Dim rst As ADODB.Recordset
Dim stCon As String, stSQL As String
Set cnt = New ADODB.Connection
Set rst = New ADODB.Recordset
stCon = "Provider=MSDASQL.1;Persist Security Info=False;Data Source=JOEY"
cnt.ConnectionString = stCon
stSQL = "INSERT INTO MyTable (FieldNames)"
stSQL = stSQL & "VALUES (ActualValues)"
stSQL = stSQL & "WHERE lockStatus = 'nolock'"
cnt.Open
rst.Open stSQL, cnt, adOpenStatic, adLockReadOnly, adCmdText
If CBool(rst.State And adStateOpen) = True Then rst.Close
Set rst = Nothing
If CBool(cnt.State And adStateOpen) = True Then cnt.Close
Set cnt = Nothing
End Sub

另请参阅此网址。

https://www.excel-sql-server.com/excel-sql-server-import-export-using-vba.htm#Introduction

最新更新