1

その方法は私には関係ありません。それがマクロであるか、または電子メールが送信されると何らかの方法で自動的に起動するかどうか。
Outlook で受信者に基づいて署名を自動的に割り当てる方法があるかどうかを知りたいです。

  • Outlook 2007 で動作する必要があります。別の方法が存在する場合は、動作するバージョンを参照して追加できます。2007 年に向けて、多くのマクロを書き直す必要がありました。
  • メールを送信するための通常の UI の使用以外にユーザーの操作が含まれていない限り、方法は重要ではありません。

ありがとう。

4

1 に答える 1

0

ここのコードに基づくhttp://www.rondebruin.nl/win/s1/outlook/signature.htm

Application_ItemSend から呼び出されるように設定できますが、おそらく問題が発生しています。

Sub With_Variable_Signature()
Dim itm As mailItem
Dim StrSignature As String
Dim sPath As String
Dim recip As Recipient

Set itm = ActiveInspector.currentItem

sPath = Environ("appdata") & "\Microsoft\Signatures\defaultSig.htm"

For Each recip In itm.Recipients
    Debug.Print recip.name
    If recip.name = "somebody"  And recip.type = olTo Then ' or = olcc or = olbcc
        sPath = Environ("appdata") & "\Microsoft\Signatures\customizedSig.htm"
        Exit For
    End If
Next

If Dir(sPath) <> "" Then
    StrSignature = GetBoiler(sPath)
Else
    StrSignature = ""
End If

With itm
    .HTMLBody = .HTMLBody & vbNewLine & vbNewLine & StrSignature
End With  

Set itm = Nothing

End Sub

Function GetBoiler(ByVal sFile As String) As String
'Dick Kusleika
Dim fso As Object
Dim ts As Object
Set fso = CreateObject("Scripting.FileSystemObject")
Set ts = fso.GetFile(sFile).OpenAsTextStream(1, -2)
GetBoiler = ts.readall
ts.Close
End Function
于 2013-11-19T01:36:10.393 に答える