固定長ファイルをエクセルに変換するマクロをVBAで開発

SE・情シス担当歴20年のコウノです。
固定長のテキストファイルをエクセルにインポートするマクロを作りました。
固定長のファイルには、区切り文字が一切ありません。
データをやり取りする際に、「1文字目から10文字目までは日付」、「11文字目から20文字目までは金額」というような
ルールを定めておき、そのルールに従ってデータを読み解く必要があります。
ファイルを見るだけでは文字の羅列しか見えず、読み解く作業は非常に労力を伴います。
そこで、ワンクリックでデータを読めるようなマクロを作ることで業務の効率化を図ります。
仕様
- 切り取る項目、位置・文字数(バイト数)は利用者が事前に設定シートに定義しておく
- マクロの実行ボタンを押下すると、インポートするファイルを選べるようになる。
- 選んだ固定長ファイルを設定シートに記載した定義に従い、1行ずつエクセルに転記する
- 変換したデータは、新規のエクセルファイルとして保存する
VBAサンプルコード:固定長をエクセルにインポートする
ポイント
取得する項目、開始位置、バイト数を予め指定しておきます。
設定シート
設定シートの書き方
- 1行目・・・開始位置と切り取り文字のバイト数(例.3-10)
- 3-10の場合、3バイト目から10バイト切り取るという意味です
- 数値型にしたい場合は、「3-10(3)」のように小数点以下の桁数をカッコで追記します
- 2行目・・・項目名(例. 商品名)
- 切り取った値の項目名を定義します。
エクセルを活用して業務改善する方法
本記事では固定長ファイルをエクセルに変換するマクロの作り方を解説しました。エクセルを活用して業務を効率化する方法はたくさんあります。もっと知りたいというかたは、以下のフォームからお問い合わせください

