2010年03月20日

文字数を数える関数はExcelとACCESSで結果が異なる

文字数を数える関数はExcelとACCESSで結果が異なる

ACCESS(マイクロソフトアクセス)、そうデータベースソフトです。

Excelなどの表計算に比べると取っつきにくい感のあるデータベースソフトですが、ちょっとかじっただけで、重宝する小ネタが作れます。(仕事で使える、と言う意味ですよ。)

さてさて、
ACCESSのファイルからデータを取り出して別のデータベースにインポート、
なんて事もよく行うのですが、時々データがあふれます。
そう、インポート先の取込容量よりも大きなデータが、元データにある場合が有るんです。
たいていの場合は、文字数の問題。

取込先のキャパは、全角30文字・半角60文字まで。
格納されているデータは、全角半角が混じる場合が有りますが、とにかく取込先のキャパは全角30文字まで。

あふれるデータを事前にチェックするには、全角30文字を越えるデータをピックアップすること。

どうやって?
全角半角混じりの文字列で、とにかく全角30文字まで。

簡単ですよね。
60バイトを越える文字列を探せば良い。


エクセルでちょっとやってみると、
文字数を返す関数は『=LEN()』
バイト数を返す関数は『=LENB()』、
で、結果はこんな感じ。

=LEN(123) ==>> 3  (123は半角数字)
=LEN(123) ==>> 3  (123は全角数字)
=LEN(川中3) ==>> 3  (3は半角数字)

=LENB(123) ==>> 3  (123は半角数字)
=LENB(123) ==>> 6  (123は全角数字)
=LENB(川中3) ==>> 5  (3は半角数字)

今回は、『=LEN()』ではなくて『=LENB()』を使って、60バイトを越えるデータを探せば良いという事。

Excelでは、これでOK。
でもACCESSでは動作がおかしい。
『=LENB()』の値が、『=LEN()』のきっちり2倍。
半角が混じっていても、2倍。
全ての文字列を全角としてカウントしているみたい。

これでは間に合いませんなぁ・・・(後編へ続く。)


写真は、確定申告時期にいただいた差し入れの『アン食パン』。
美味しくいただきました、ありがとうございましたm(__)m


 ネットビジネスを応援する鯖江の税理士法人川中経営
  税理士・ITコーディネータ 川中重司


当ブログにお越しいただき、ありがとうございます。 当ブログは、2010年8月8日より、アドレスを変更することとなりました。
ブックマークなどの登録をしていただいている方には、登録の変更を御願いいたします。


新しいアドレスは下記になります。
新しいアドレスにて、従来にも増してのお付き合いをいただければ幸いです。


従来のアドレス
http://shigeshi.sblo.jp/

新しいアドレス
http://shigeshi.kawanaka.jp/

(http://しげし.かわなか.jp
    独自ドメインでの運用となりました。)


川中は、ツイッターで時々つぶやいています。よろしければご覧下さい。
川中は、ツイッターで時々つぶやいています。よろしければご覧下さい。


posted by 鯖江の税理士 at 00:00 | Comment(0) | TrackBack(1) | 10)パソコン
この記事へのコメント
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
この記事へのトラックバックURL
http://blog.sakura.ne.jp/tb/36525696
※ブログオーナーが承認したトラックバックのみ表示されます。
※言及リンクのないトラックバックは受信されません。

この記事へのトラックバック

ではどうする:文字数を数える関数はExcelとACCESSで結果が異なる。
Excerpt: Access2000以降のLenB関数よく、解説書で「LenB関数は、半角なら1バイト、全角なら2バイトで戻り値を返します」と記載されていますが、Access2000以降、この記述は誤りです。
Weblog: 川中重司、ほのぼのIT税理士!(^^)のブログ
Tracked: 2010-03-21 11:38