拗音・促音を直音に変換する

[vb]
Dim tmpS As String
tmpS = "ッっ"
tmpS = Replace(tmpS,"っ","つ",,,vbBinaryCompare)
[/vb]


Replace命令を使って促音・拗音を直音に置き換えることができる。
ただし、AccessのReplace命令はExcelの同命令と違うので注意が必要。
Excelの場合、次のようにvbBinaryCompareを指定しなくてもうまくいく。

[vb]
Dim tmpS As String
tmpS = "ッっ"
tmpS = Replace(tmpS,"っ","つ")
[/vb]

このコードはAccessでは危険を招く。
AccessではCompareオプションのデフォルトはvbDatabaseCompareとなっているためだ。
このモードでは平仮名の『っ』と片仮名の『ッ』を区別しない。
よって上記例でvbBinaryCompareを指定せずに実行した場合『つつ』が返ってくる。
ExcelでうまくいくのはExcelではvbBinaryCompareがデフォルトとなっているためだ。
普段Accessを使い慣れていないと起こしやすいミスなので注意が必要だ。