[効率化検討]ユニットデータの編集(2)

つづき

4.指揮官の修正について

 入力画像、OCR読取りデータ、VASSALで必要なデータと並び順を見て、編集方法を検討する。

(1)入力画像

(2)読取りデータ

 下図のように、指揮官だけのユニットの場合には、名称の次の行が空白行のために認識されない。

しかし、他のユニットと混在する場合には、名称の次の行のデータは空白になる。

また、名称と対応するデータがバラバラになる。例えば、Pernitzkiの歩兵ボーナス2は、

Strykのものである。

(3)VASSALで必要なデータと並び順

 歩兵と同様に4行のデータである。

(4)編集方法

 EXCELの編集シートでは、士気ボーナス以外は、次のように文字を入力する。

 ・データ1行目 ;歩兵ボーナス(データ無しは、空(””))

 ・データ2行目 ;騎兵ボーナス(同上)

 ・データ3行目 ;砲兵ボーナス(同上)

士気ボーナスは、砲兵ボーナスの後ろに&文字を付けて入力する。(下図参照)

この場合、&の前が空(””)なら、&の前に半角空白を入れる。

(5)VBAプログラム

 データ3行目に&の文字があるか判定して転送先のデータ設定を変える。

・&なしの場合 ; 3行目のデータをそのまま転送し、4行目は空(“”)を設定する。

・&ありの場合 ; &より前のデータを3行目に、&より後のデータを4行目に設定する。

なお、&の検索にはVBAの正規表現を利用する。

下記のWEBページにお世話になりました。ありがとうございます。

VBAで正規表現を使用する方法

【VBA】正規表現を使用して検索や置換を行う

正規表現を利用したユーザー定義関数

(6)転送先のシート(プログラムの動作後)

次回へつづく

 

<個人的な感想>

 VBAでも正規表現を使って文字の検索が出来るので、とても便利である。

 

<リンク>

ブログのトップページは、こちら

バタイユゲーム情報班のホームページは、こちら