excel - 保留导入的文件,然后将其附加到电子邮件中
问题描述
我创建了一个程序,用户将从他们选择的 excel 文件中导入数据,然后他们可以将其发送到 Outlook 电子邮件以发送给需要的人。
我的问题是,我如何对其进行编码,以便程序保留导入的 excel 文件并自动将其附加到电子邮件中?
我的代码设置为允许导入数据,然后转储文件,当用户准备好发送电子邮件时,他们必须将文件重新附加到电子邮件中。
以下是导入 Excel 数据代码的一部分:
Dim xl As New Excel.Application
Dim objworksheet As Excel.Worksheet
Dim objWorkbook As Excel.Workbook
Dim ofd As OpenFileDialog = New OpenFileDialog
ofd.DefaultExt = "xlsx"
ofd.FileName = " "
ofd.InitialDirectory = "c:\"
ofd.FilterIndex = "1"
ofd.Filter = "Excel Files (.xlsx)|*.xlsx| Excel Files(.xls)|*.xls| Excel Files (*.xlsm)|*.xlsm"
ofd.Title = "Select file"
If (ofd.ShowDialog() = DialogResult.OK) Then
objWorkbook = xl.Workbooks.Open(ofd.FileName)
(这是需要获取哪些信息并将其放置在哪里)
导入数据代码的结尾:
xl.ActiveWorkbook.Close(False)
xl.Quit()
Else
ofd.Dispose()
End If
这是我的“发送到电子邮件”代码的一部分,而不是用户必须找到相同的文件,我希望程序自动附加与导入文件相同的文件。它们来自两个不同的功能,但不确定是否可能。
' 添加 Excel 文件作为附件
Dim ofd As OpenFileDialog = New OpenFileDialog
ofd.DefaultExt = "xlsx"
ofd.FileName = " "
ofd.InitialDirectory = "c:\"
ofd.FilterIndex = "1"
ofd.Filter = "Excel Files (.xlsx)|*.xlsx| Excel Files(.xls)|*.xls| Excel Files (*.xlsm)|*.xlsm"
ofd.Title = "Select file"
If (ofd.ShowDialog() = DialogResult.OK) Then
OutlookMessage.Attachments.Add(ofd.FileName)
OutlookMessage.Display()
Else
ofd.Dispose()
MessageBox.Show("Must attach excel file to proceed")
End If
Catch ex As Exception
MessageBox.Show("Email could not be created")
Finally
OutlookMessage = Nothing
AppOutlook = Nothing
End Try
End If
解决方案
你绝对可以将变量传递给采购,你应该这样做。
您的声明将如下所示:
Public Sub SendMailWithAttachment(ByVal fileName as string)
然后您的代码将使用它:
OutlookMessage.Attachments.Add(fileName)
OutlookMessage.Display()
要使用此过程,您可以这样称呼它:
SendMailWithAttachment(ofd.FileName)
注意:附加时不应打开文件。您只是使用文件名,而不是文件对象。
推荐阅读
- swift - SwiftUI - 如何获取单击按钮的坐标/位置
- java - 如何比较 jLabel 的边框粗细?
- c# - 如何使用 mailkit 在列表视图项目中将标志设置为邮件?
- reactjs - SyntaxError:预期的表达式,得到 '<' react json schema form
- node.js - 如果我使用带有 es6 标记模板文字的查询,用于 node.js 的 NPM 模块 mssql 是否可以免受 sql 注入攻击,如下所示
- ruby - 使用 column_names 时有没有办法减少 counter_culture gem?
- mips - MIPS 中的 sw 和 lw 是否存储低于或高于堆栈指针的值?
- javafx - JavaFX removeEventHandler 未按预期工作
- android-studio - 如何在 android studio 3.5 中调整模拟器的大小
- php - 如何在数据库中获取数据并显示在“选择”下拉列表中