IT関連

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

投稿日:2017年6月16日 更新日:

これは私の備忘録です。

 

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

 

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

 

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

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

 

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

 

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

 

スポンサーリンク




スポンサーリンク




-IT関連
-, ,

執筆者:


comment

Your email address will not be published. Required fields are marked *

関連記事

ExcelVBA ProgressBarを自作

これは自分の備忘録であり、私が思い出すための記事なのでご了承のほど。   5分くらい時間がかかるマクロがあり、固まっていないか心配になると上司から指摘があり、進捗バーを作ろうとする。 &nb …

AS400/IBMi DBCSでないフィールドの文字化け

PHPでデータを引っ張る際、お決まりの  

  をしているのだが、今回引っ張った文字がなぜか文字化けしていた。 & …

AS400/IBMi からデータを取得 ExcelVBA クラス化編

注意 これは私の環境下における私の備忘録です。お使いの環境によっては内容が異なる場合があります。システム管理者でない方は絶対にやらないでください。システムにはログが残るものなので、万が一があればクビに …

Windows 社内のパソコンが点いているかを一括確認 Ping Sweep

原理 宛先(PC)にデータを送って応答を待つping(ピングもしくはピン)というコマンドがある。 pingを送って応答があったパソコンは点いているということ。 これを利用してネットワーク全体にping …

AS400/IBMi 文字列の並び順AAA~999まで

ITの世界では同じだと思いますが、3桁の文字列はどういう並び順になるのか調べました。   物理ファイルに3桁のカラムを1つ用意してテスト文字列を登録する。 登場人物は、 000 999 ZZ …

Adsense広告




文字で検索

人気記事

なぜだか人気記事

読んでほしい順に