Outlook 용 VSTO 추가 기능으로 바꿀 VBA 스크립트가 있습니다. VBA에서 Outlook VSTO 추가 기능 사용자 지정 규칙/스크립트
나는 그때 나는이 방법을 선택할 수 있습니다 "스크립트를 실행"으로 규칙을 만들 때 팝업Public Sub DruckeAnhaenge(oMail As Outlook.MailItem)
라는 방법이있다. 거기에 "ThisOutlookSession.DruckeAnhaenge"가 있습니다.
이제 VSTO 추가 기능에서 정확히 동일한 방법을 만들었지 만 더 이상 표시되지 않습니다.
시작 메서드가이 추가 기능에서 호출됩니다 (MsgBox로 체크). 그래서 내 질문에 어떻게 VBA 편집기에서 규칙/스크립트로이 메서드를 얻을 수 있습니까?
다음은 추가 기능의 전체 코드입니다.
Public Class ThisAddIn
Private Sub ThisAddIn_Startup() Handles Me.Startup
MsgBox("Add In wird erfolgreich ausgeführt")
End Sub
Private Sub ThisAddIn_Shutdown() Handles Me.Shutdown
End Sub
Private Declare Function ShellExecute Lib "shell32.dll" Alias _
"ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String,
ByVal lpFile As String, ByVal lpParameters As String,
ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
Private WithEvents Items As Outlook.Items
Public Sub DruckeAnhaenge(oMail As Outlook.MailItem)
On Error Resume Next
Dim colAtts As Outlook.Attachments
Dim oAtt As Outlook.Attachment
Dim sFile As String
Dim sDirectory As String
Dim sFileType As String
sDirectory = "C:\Attachments\"
'Set colAtts = oMail.Attachments
If oMail.Attachments.Count Then
For Each oAtt In oMail.Attachments
' This code looks at the last 4 characters in a filename
sFileType = LCase$(Right$(oAtt.FileName, 4))
Select Case sFileType
' Add additional file types below
Case ".xls", ".doc", ".pdf"
sFile = sDirectory & oAtt.FileName
oAtt.SaveAsFile(sFile)
ShellExecute(0, "print", sFile, vbNullString, vbNullString, 0)
End Select
Next
End If
End Sub
End Class