VBA

【ExcelVBA】シングルクォート区切りのdatファイルを作成する

ねぇもりさん、VBAでdatファイル作れるかな?
もり
もり
datファイル?!

 

datファイル(ダットファイル)とは、拡張子が .dat の「データファイル」です。システムに取り込むデータなどに使われます。

 

シングルクォート区切りdatファイル、作ってよ
もり
もり
お、おぅ・・・まかせろ!

エクセルシートのデータから、シングルクォート区切りdatファイルを作成します。

Excelシートからdatファイルを作成する

 

 

SaveAsメソッドでdatファイルは作れない?

ファイル保存といえばSaveAsメソッドですが・・・

SaveAsメソッドのフォーマットに「dat」形式は指定できないようです。

もり
もり
仕方ないね…地道な方法で作るわよ

【方針】

  • エクセルシートの「各セルの値」にシングルクォートを挟んで連結する
  • 最終列の場合、改行する
    ※ただし、最終行・最終列の場合は改行しない

こんな感じですね↓

(改行)
(改行)

Excelシートからdatファイルを作成する

アクティブシートのデータからdatファイルを作成するコードです。2行目以降をファイルに出力します。

※1行目から出力したい場合は、19行目 For r = 2 To lastRow の 2 を 1 に変更してください。

このコードを実行すると、マクロブックと同じ階層にsample.datが出力されます。メモ帳などのテキストエディタにドラッグ・アンド・ドロップすると、中身を確認できます。

datファイルの開き方

Printメソッドで改行しない方法

各セルの値にシングルクォートを挟んで連結しています。

【ポイント】

  • 最終列 → 改行する
  • それ以外 → 改行しない

Printステートメントの行末にセミコロン(;)を付けると改行しません。このセミコロンを利用して、各セルの値を改行なしで連結していき、最終列のみ改行するようにします。

datファイルの作成(改行するしない)

 

.txt(テキストファイル) や .csv(CSVファイル)が一般的で、datファイルはシステムにアップロードする際に使われる珍しい形式のファイルです。

もし作成することがあれば、ぜひこの方法を活用してみてください。

【100万人以上が使う】タスク管理・プロジェクト管理ツール「Backlog」の新規無料トライアル

「Backlog」は日本製のタスク管理・プロジェクト管理ツールです。

国内利用者は100万人を超え、エンジニア・デザイナー以外にも、営業・人事・経理など、幅広い職種で大人気!

日本製なので、親しみやすく直感的に使えるのがポイントです。

タスク管理・プロジェクト管理にかかせない主な機能がこちら。

  • 課題(タスク)の作成
  • ファイル共有
  • wiki
  • ガントチャート
  • カンバンボード
  • テンプレート機能

法人・個人問わず利用できるので、効率的にタスク管理したいフリーランスの方にもオススメですよ!