У меня есть клиент, который использует Access 2002, потому что он позволяет репликацию. Он использует это в Windows 10 с Outlook из Office 365.
Цель состоит в том, чтобы создать новое электронное письмо со всей заполненной информацией и приложить отсканированное предложение, чтобы мой клиент мог просмотреть электронное письмо, сделать любоеизменения, которые он хочет, а затем отправьте его.
В Access команда SendObject создает и открывает текстовое электронное письмо, и пока это электронное письмо открыто, мой макрос Outlook для сканирования документа и прикрепления его к электронному письму не запускается.
Поэтому я хотел бы создать новое электронное письмо Outlook из Access, которое позволит мне запускать макрос Outlook.
Или, если бы я мог получить Access 2002, чтобы создать электронное письмо и прикрепить отсканированный документк нему, я думаю, я мог бы обойтись использованием msgbox для проверки определенных элементов.
Ниже приведен макрос Access с командой SendObject, за которой следует макрос Outlook.
Private Sub EmailProposal_Click()
'Access macro.
Dim stDocName As String
Dim stEmailAddress As String
Dim stSubject As String
Dim stMessage As String
stDocName = "rptProposal"
stEmailAddress = Forms!RequestForm!EmailAddress.Value
stSubject = "PROPOSAL"
stMessage = "Your proposal is attached." & vbCrLf & vbCrLf & "If you have any questions, please call us."
'Email the proposal.
DoCmd.SendObject acReport, stDocName, acFormatRTF, stEmailAddress, , , stSubject, stMessage
End Sub
Sub Scan()
'Outlook macro.
Dim myItem As Outlook.MailItem
Dim myAttachments As Outlook.Attachments
On Error Resume Next
Dim objCommonDialog As WIA.CommonDialog
Dim objImage As WIA.ImageFile
Dim strPath As String
Set objCommonDialog = New WIA.CommonDialog
'This shows the dialog box. I'd rather tell it what to do instead of having to manually choose each time.
Set objImage = objCommonDialog.ShowAcquireImage
strPath = Environ("TEMP") & "\TempScan.jpg" 'Save the scan.
If Not objImage Is Nothing Then
objImage.SaveFile strPath ' save into temp file
On Error GoTo ErrHandler
If TypeName(ActiveWindow) = "Inspector" Then
If ActiveInspector.IsWordMail And ActiveInspector.EditorType = olEditorWord Then
ActiveInspector.WordEditor.Application.Selection.Inlineshapes.AddPicture strPath 'Insert into email. I want to attach it instead.
End If
End If
Kill strPath
Else
MsgBox "The Scan macro in Outlook did not find a document." & vbCrLf & vbCrLf & _
"Please place the proposal in the printer so it can be scanned.", vbOKOnly
End If
lbl_Exit:
Set objImage = Nothing
Set objCommonDialog = Nothing
Exit Sub
ErrHandler:
Beep
Resume lbl_Exit
End Sub