『川中重司、ほのぼのIT税理士!(^^)のブログ』のバックアップブログです。10)パソコン文字数を数える関数はExcelとACCESSで結果が異なる

文字数を数える関数は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コーディネータ 川中重司



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



トラックバック(1)

このブログ記事を参照しているブログ一覧: 文字数を数える関数はExcelとACCESSで結果が異なる

このブログ記事に対するトラックバックURL: http://www.kawanaka-keiei.jp/mt/mt-tb.cgi/2225

Access2000以降のLenB関数よく、解説書で「LenB関数は、半角なら1バイト、全角なら2バイトで戻り値を返します」と記載されていますが、Access2000以降、この記述は誤りです。 続きを読む

このブログ記事について

このページは、鯖江の税理士が2010年3月20日 00:00に書いたブログ記事です。

ひとつ前のブログ記事は「今年初の誠市でのスナップ」です。

次のブログ記事は「越前市中央図書館の営業時間」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。