送信前に機種依存文字をチェックするマクロ


コメントにて以下のようなご要望をいただきました。


Outlook2010でメール送信をする際、機種依存文字(半角カナ含む)が含まれているか
チェックするマクロをご教授頂きたくお願いいたします。
もし機種依存文字が含まれていれば、コメントボックス等で対象文字が分かるような形
だと助かります。
よろしくお願いいたします。



ご要望のマクロは下記のようなものになります。なお、半角カタカナについては Outlook では送信時に自動的に全角文字となるため、チェックする必要はないかもしれません。

' ここをトリプルクリックでマクロ全体を選択できます。
Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
    CheckNonJIS Item, Cancel
End Sub
'
Private Sub CheckNonJIS(ByVal objItem As Object, bCancel As Boolean)
    Dim strBody As String
    Dim c As String
    Dim ic As Integer
    Dim i As Integer
    Dim strError As String
    Dim strNonJIS As String
    Dim strUnicode As String
    strBody = objItem.Body
    '
    For i = 1 To Len(strBody)
        c = Mid(strBody, i, 1)
        ic = Asc(c)
        If ic < 0 And (ic < &H8140 Or (&H8740 <= ic And ic < &H889F) Or &HEB40 <= ic) Then
            strNonJIS = strNonJIS & c
        ElseIf ic >= &HA1 Then
            strNonJIS = strNonJIS & c
        ElseIf ic = &H3F And c <> "?" Then
            strUnicode = strUnicode & c
        End If
    Next
    If strNonJIS <> "" Or strUnicode <> "" Then
        strError = "以下の文字が含まれているため送信を中止します。" & vbCrLf
        If strNonJIS <> "" Then
            strError = strError & "機種依存文字:" & strNonJIS & vbCrLf
        End If
        If strUnicode <> "" Then
            strError = strError & "Unicode 文字" & vbCrLf
        End If
        MsgBox strError, vbCritical, "送信文字チェック"
        bCancel = True
    End If
End Sub

マクロの登録方法やメニューへの追加について

送信前に機種依存文字をチェックするマクロ」への1件のフィードバック

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中