<Accessで半角スペースを全角にしたい> 目次 1.こんにちは 2.Accessで半角スペースを全角にしたい 3.いろいろな考え方が、、、 4.おわりの挨拶 ---------------------------------------------------------------------------- /* * 1.こんにちは */ こんにちは。 匿名さんより、Access関係の質問、いただきました。 住所データの整理を行っており(年末年賀状の準備かな?) 氏名と名前の間を全角スペースで統一したいとのご相談でした。 AB型で気分屋のKen3が、一人二役で回答します。 *別なやり方を思いついた人、 イヤこれは違う、、と一緒に毒舌したい人は、 メール送ってください。 オイオイ、いつになったら、講座開始するの? 、、、、 /* * 2.Accessで半角スペースを全角にしたい */ 匿名 さん wrote... >ACCESSで半角スペースを全角スペースにする関数か、 >または、方法を教えて下さい > >特に名前などに間のスペースを簡単に変換する方法は? > > 例: 匿名 希望 ――→ 匿名 希望 A = "匿名 希望" msgbox strconv(A, vbWide) でOKだと思うけど、、、 *vbWide --> 半角文字列を全角にする これは、わかってんだよ。、、 じゃなくて、 更新クエリーとかで一括更新するには、 どうすんだよ。 そしたら、 更新クエリーで、 UPDATE DISTINCTROW T_DATA SET T_DATA.変換後 = StrConv([氏名元],vbWide); って書けばいいんじゃないの? StrConv([氏名元],vbWide)って書いても、 StrConv([氏名元],"vbWide")で勝手に""が付くんだよ。 自分でサンプル作ってから、回答してるの? あっ、おっしゃる通り、 StrConv([氏名元],vbWide)のvbWideが書けないですね。 定数は、クエリーの中じゃ使えないみたいですね、、、 StrConv([氏名元],4)にすると、動きますよ。 どうやって、vbWide = 4って、わかったんだよ、、、 StrConvのヘルプ見て下さいよ、、、たまには、、、。 それか、デバックモード(CTRL+G)で、 ? vbWideってやると、4と表示されますよ。 クエリーは書けたけど、 これだと、元から、 半角スペースが2つ入っているデータが 全角スペース2つに変換されるから、 使えないね。 例)匿名 希望 --> 匿名□□希望と全角スペース2つになる また、半角英字で外人の名前が入っていたら、全角になってしまうだろ。 例)Kibou Tokumei --> Kibou Tokumei 半角カナでユースケ・サンタマリアなんて入ってたら、どう? しつこいですね、、、わかりましたよ、 下記のモジュールを使ってください。 Public Function SP_Conv(moji) As String Dim n As Integer Dim RET As String Dim ChkString As String RET = "" 'リターン値の初期化 '文字数分ループする For n = 1 To Len(moji & "") ChkString = Mid(moji, n, 1) If ChkString = " " Then '半角スペースかチェック RET = RET & " " '全角スペースをプラスする If Mid(moji, (n + 1), 1) = " " Then '次の文字がスペースがチェック n = n + 1 'ループカウンタを小細工 End If Else RET = RET & ChkString 'スペース以外の時、そのままプラスする End If Next n SP_Conv = RET End Function 更新クエリーで、 UPDATE DISTINCTROW T_DATA SET T_DATA.変換後 = SP_Conv([氏名元]); って書けばOKだと思います。 [氏名元]がNullだった時、""に変換されてしまうよ。 それだと、マズイケースが出て来るんだよな、、、 もう、それぐらい、自分で改造してくださいよ。。。では。。。 *途中で投げだしちゃ、よくないよ、、、 (完璧、考えてください) /* * 3.いろいろな考え方が、、、 */ プログラムを組んで、テストをしていると、 データによって、いろいろな処理の方法や、 例外ケースが出てきます。 「そんなの聞いてないよ...」「仕様外は対応しない」 など、言ってケンカするのも、面白い?ですが、 一番良いのは、打合せの時に想像力を働かせて、 事前に回避するのが、、、理想ですね。 ある話で、 この業界では常識だから事前に話さなかった など言われて、イタイ目にあったことあります。 また、最近は、 「お客にムリだって、言って下さいよ、できないですよもう」 とチーム内のメンバーからは言われ、 お客からは、 「なんとかしてくださいよ」 と相談され、、、立場が、、、 あっ、このへんで愚痴も終らせないと、、、 Sp_cnv.lzh←Access97だけど
ここまで、読んでいただきどうもです。ここから下は、三流君のホームページの紹介・案内です
目的の情報が見つかったか?少々心配しつつ、、、
項目別に本音?それとも建て前?的な記事をまとめました。
気になったジャンル↓を選択してください。 |
Blogとリンク:[三流君の作業日記]/ [愚痴(Bookmark)]/ [広告Blog(Bookmark)]