vba や外部文字、Web では常に問題が発生します。
編集:
セルの値を html から分離できないため、残念ながら以下の関数はこの状況では機能しません。しかし:
ドキュメントのコピーを西ヨーロッパの Windows エンコーディングで保存すると機能します。(以下のコメントを参照)。
これを行うには、[名前を付けて保存] を押します。保存ボタン (ツール) の左側にドロップダウンがあり、エンコードを変更できるダイアログが表示されます。
画像はテクネットから持ち出され、常にウェブを保存しています..必要はありません。
EOF 編集:
これは私が使用した関数です。残念ながら誰から入手したかは思い出せませんが、昔の vba と従来の ASP からのものです。電子メールのセル式をこの関数に入れると、すべての文字が html エンコードされているため、機能するはずです。その速度は遅く、オーバーヘッドが大きくなります。しかし、それはうまくいきます。
Function HtmlEncode(ByVal inText As String) As String
Dim i As Integer
Dim sEnc As Integer
Dim repl As String
HtmlEncode = inText
For i = Len(HtmlEncode) To 1 Step -1
sEnc = Asc(Mid$(HtmlEncode, i, 1))
Select Case sEnc
Case 32
repl = " "
Case 34
repl = """
Case 38
repl = "&"
Case 60
repl = "<"
Case 62
repl = ">"
Case 32 To 127
'Numbers
Case Else
repl = "&#" & CStr(sEnc) & ";" 'Encode it all
End Select
If Len(repl) Then
HtmlEncode = Left$(HtmlEncode, i - 1) & repl & Mid$(HtmlEncode, i + 1)
repl = ""
End If
Next
End Function