プロが教える店舗&オフィスのセキュリティ対策術

初歩的な質問で申し訳ありません。
半角カタカナのァを半角カタカナのアにしたいのです。
アルファベットは関数がありますが、
カタカナにはないようです。
関数でも、VBAでも結構です。ご教示ください。
ただし、アクセスからエクセルの関数を呼び出すのは、
他のパソコンでも使うファイルのため、使いたくありません。
よろしくお願いします

A 回答 (3件)

変換関数を作ってみました。



Const の部分は半角カタカナにしてください。
なお、Const に付け加えれば、全角カナ・かなでも可能です。

Public Function UCaseKana(Value As Variant) As Variant
Const src As String = "ァィゥェォャュョッ"
Const dst As String = "アイウエオヤユヨツ"
Dim wk As String
Dim i As Integer
Dim ch As String
Dim pos As Integer

If VarType(Value) <> vbString Then
UCaseKana = Value
Exit Function
End If

For i = 1 To Len(Value)
ch = Mid$(Value, i, 1)
pos = InStr(1, src, ch, vbBinaryCompare)
If pos > 0 Then
wk = wk & Mid$(dst, pos, 1)
Else
wk = wk & ch
End If
Next
UCaseKana = wk
End Function
    • good
    • 0
この回答へのお礼

早速の回答ありがとうございました。
こんな関数があればと、思ったのですが、
やっぱり自分で作るしかないのですね。
こんなに丁寧な回答は初めてでした。('_')
次のバージョンで実装されることを祈りつつ、
ありがたく利用させて頂きます。
本当にありがとうございました。

お礼日時:2006/02/23 08:42

こんばんは。



関数でしたら、Replace 関数はいかがでしょうか?
  Replace([フィールド名], "ァ", "ア")
更新クエリでご利用されたらよろしいかと思います。

なお、この Replace 関数は VBA でも使用できます。

※ OKWave では半角カタカナは全角に変換されてしまいます。
 上記のカタカナは半角文字と読み替えてくださいね。
    • good
    • 0
この回答へのお礼

早速の回答ありがとうございました。
参考にさせて頂きます

お礼日時:2006/02/23 08:38

こんにちは。

KenKen_SP です。

テーブルを開いて、処理対象を選択(列全体など)し、メニュー[編集]-[置換]で検索条件に[フィールドの一部分]を、[大文字小文字を区別する]にチェックを入れて置換することはできませんか?
    • good
    • 0
この回答へのお礼

早速の回答ありがとうございます
説明不足でした。
入力された名前を、半角大文字で入力されたデータベースと照合するために、
その都度、半角カタカナの小文字をすべて大文字にそろえる必要があるのです。

他の方の回答も併せて見る限り、1文字ごとに探して変換するしか方法はなさそうです。
回答ありがとうございました。

お礼日時:2006/02/23 08:37

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています