<HOME  <お願い事項   <Access2002 TOP   <Access97 TOP   <サイト内検索
 MS-Access2000--VBAの小屋>数字を漢字にする関数
   1  2  3  4  5  6  7  8



しかし!!!ひとつだけ問題が残ってました!!!ゼロのとき、どうすれば・・・。

多分今の状態だと、1280とか1058とか、引数のどこかにゼロが入ってるとエラーになると思います。ゼロのと起動するか、処理を作ってないからですわ。
ふつう、どういう表示をさせますでしょう。0って出します?全角で?
それとも、その桁は飛ばしますか。。。んじゃあ

こうかな???
ループに入ってから、Cnt変数の中身を拾ったあと、その文字が0かそうでないかによって処理を分岐します。

これで、ゼロが含まれててもエラーにはならないと思います。


さて!5桁までだったらこれで何とかなりますけど、もっと桁の多い数字を漢数字にしたい場合は・・・。

出ませんよねぇ。作らないものは出ないですよね。うーん、どうしよう・・・。
まあ、ひとつの方法として、5桁を超える数は、処理できないということをはっきりさせてしまう、っていうのはどうでしょう。

処理の先頭で、S1の桁数(文字数)が5より大きかったら、ここより先の処理に進んでも全部を漢字にすることができないから、っていうことで、はなっから何にもしない、っていうわけです。ErrorとかOverとかいうメッセージを出してもいいですね。
で、Exitという命令で、処理を抜けてしまいます。
今回は、一番先頭で、まだ何も処理をしていないときですんで、Exitっていう命令で旅の恥はかき捨てますが、処理の途中で、いきなりExitしちゃったらいろいろまずいときもあるかと思います。特に、テーブルなどを開いて処理をしている場合とか、ちゃんとCloseしてからExitしないといけません。
処理を途中でやめる、っていうのも、ケースバイケースだと思うので、十分注意してくださいね。

でも、これじゃあなんか心残りだなぁ。桁が少ない数字ばかりが対称になっている場合は、ココまでの処理を作れば、数字を漢字に変えることができるとは思うんですけど・・・。
もうちょっとがんばってみますか?
もう少し挑戦してみよう!という方は、ぜひとも次のページに進んでください。がんばりましょう。