ExcelVBA シフト文字を含めてバイト数をカウントする

IT関連

これは私の備忘録です。

 

エクセルに入力したデータをAS400にアップロードする仕組みを作ったのですが、AS400はシフト文字の関係上、文字数の計算がややこしいです。

 

例えば「ありがとう」は10バイトピッタリのはずですが、実際は両端にシフト分半角が1づつ入るので、10+2の12バイトになります。

 

なので、エクセルのデータの入力規則でLenb(A1) < 10などとしてもダメ。

UPDATE時に文字数がおかしいよと怒られてしまいます。

 

これを回避するには、セルの文字を1つ1つ見ていくしかないみたい。

 

サンプルプログラムはこんな感じ。変数はdimで定義しているものと思ってください。

 

コメント

タイトルとURLをコピーしました