我有一个在一周的指定日期运行的查询。在那一天,如果有任何记录被标记"需要订购"然后使用命令按钮打开一个orderform窗口。命令按钮应将查询数据导出到excel模板(已经按照它应该看的方式格式化),然后附加到要发送的电子邮件模板。我可以查询附加到电子邮件,我似乎无法弄清楚如何使用excel模板而不是每次都创建一个新的Excel工作簿。有关尝试什么的任何建议?
Dim myolapp As Object
Dim myitem As Object
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "BoxOrder", "C:\Users\Database Design\Desktop\BoxOrder.xlsx", True
Set myolapp = CreateObject("Outlook.Application") myolapp.Session.Logon
Set myitem = myolapp.CreateItemFromTemplate("F:\BOX ORDER FOR PC CONNECTION.oft")
Set myAttachments = myitem.attachments
myAttachments.Add "C:\Users\Database Design\Desktop\BoxOrder.xlsx"
myitem.Display 'or send
DoCmd.Close acForm, "OrderForm"
BoxOrder
查询:
SELECT '' AS [Quantity Needed], [BoxOrder].[Box Size], [BoxOrder].Comments,
[BoxOrder].[Certified/Stamped Boxes], [BoxOrder].[Box Type]
FROM BoxOrder;
答案 0 :(得分:1)
你做不到。 TemplateFile
的{{1}}参数仅适用于HTML(及类似)导出。
使用DoCmd.OutputTo
或DoCmd.OutputTo
后有两种可能性。这一切都可以通过VBA完成:
这取决于模板的复杂程度,哪一个更好。