Access VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


1135 / 2272 ツリー ←次へ | 前へ→

【8630】カタカナをひらがなに あおぎん 06/9/26(火) 16:47 質問[未読]
【8631】Re:カタカナをひらがなに 小僧 06/9/26(火) 22:03 回答[未読]
【8632】Re:カタカナをひらがなに あおぎん 06/9/27(水) 9:59 お礼[未読]
【8633】Re:カタカナをひらがなに 小僧 06/9/27(水) 10:50 回答[未読]
【8635】Re:カタカナをひらがなに あおぎん 06/9/27(水) 12:13 お礼[未読]

【8630】カタカナをひらがなに
質問  あおぎん  - 06/9/26(火) 16:47 -

引用なし
パスワード
   こんにちは。
いつもお世話になっています。

もしかして、ものすごく単純なことかもしれないのですが、どうしても方法がわからないので、ヒントだけでも教えてください。

氏名のフリガナをカタカナで入力しているテーブルがあるのですが、これをひらがなに変換するような関数がありますでしょうか?
できれば、クエリで置き換えをしたいと思っています。

よろしくお願いします。

【8631】Re:カタカナをひらがなに
回答  小僧  - 06/9/26(火) 22:03 -

引用なし
パスワード
   ▼あおぎん さん:
こんばんは。

>氏名のフリガナをカタカナで入力しているテーブルがあるのですが、
>これをひらがなに変換するような関数がありますでしょうか?

StrConv関数でできそうですね。

>できれば、クエリで置き換えをしたいと思っています。

UPDATE テーブル名 SET テーブル名.フリガナ = StrConv([フリガナ],36);


過去ログを参照したのですが、
あおぎん さんのAccessのバージョンは2000でしたよね?

恐らく大丈夫だと思われるのですが、Ac2000では
一部関数をクエリで直接使うとエラーが出るというバグが報告されております。

もしエラーが出てしまう場合はユーザ定義関数を作る必要があるかもしれませんね。

【8632】Re:カタカナをひらがなに
お礼  あおぎん  - 06/9/27(水) 9:59 -

引用なし
パスワード
   ▼小僧 さん:

おはようございます。
さっそくのお返事ありがとうございました。
ご教示の方法でエラーもなく変換できました!
ありがとうございました。

なんとか自分でやろうとヘルプで検索などしたのですが、『変換する関数』や『置換』で検索してもうまく見つけることができませんでした。検索にもコツみたいなものがあるんでしょうね。

で、教えていただいた関数をヘルプで調べてみたところ、ひらがなに変える値は32だと記述してありました。小僧さんは36なのにこっちでもできるのかな・・と思いつつ32で試してみると、カタカナのままでした。

ううむ??

36でできたのでまったく問題ないのですが、疑問に思ったので書いてみました。


>過去ログを参照したのですが、
>あおぎん さんのAccessのバージョンは2000でしたよね?

すみません!
いらない手間をかけさせてしまいました。
以降書き漏らさないよう気をつけます。

ほんとにありがとうございました。

【8633】Re:カタカナをひらがなに
回答  小僧  - 06/9/27(水) 10:50 -

引用なし
パスワード
   ▼あおぎん さん:
おはようございます。

>36でできたのでまったく問題ないのですが、疑問に思ったので書いてみました。

そうですね。
もうちょっと詳しく説明するべきでしたね。すみませんでした。


今回は「カタカナ」⇒「ひらがな」という事でしたが、
カタカナには「半角カナ」「全角カナ」の2種類があります。

半角カナですと、全角カナへの変換の後に全角かなへの変換が必要になります。
モジュール内ですと下記の様な記述になります。

StrConv([フリガナ], vbWide + vbHiragana)


クエリ内では VBA の定数が使えないため、
vbWide は 4 に、vbHiragana は 32 に変更します。

StrConv([フリガナ], 4 + 32)


あとは計算させてあげると、前回提示させて頂いた

StrConv([フリガナ], 36)

という式になります。

【8635】Re:カタカナをひらがなに
お礼  あおぎん  - 06/9/27(水) 12:13 -

引用なし
パスワード
   ▼小僧 さん:

お返事ありがとうございます。
丁寧な解説で、よ〜〜〜くわかりました!
フリガナが全角カタカナだと、32でもできるんですね〜〜。
36だとどっちでも対応できるので、36としてくださったんですね。


ほんとうにありがとうございました。

1135 / 2272 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
1078214
(SS)C-BOARD v3.8 is Free