【VBA】エクセルシートのデータをcsvファイルとして自動保存する方法!

f:id:yshgs_elec:20210210213107j:plain

エクセルシート上のデータをcsvファイルとして自動出力したい。

それならこの記事のVBAコードを実行するだけでOK。

というわけで、この記事では、作業中のエクセルシートの情報を、csvファイルとして同じ作業フォルダに出力する方法をご紹介していきます。

 

それでは早速やりかたをご紹介していきましょう!

 

スポンサーリンク

紹介するスキルの概要説明

今回は、以下の画像のように、あるマクロ有効ブック(.xlsmファイル)に記入されているデータを、csvファイルとして出力していきます。

csvファイル化したいサンプルエクセルファイルの確認

 

また、このデータはdata1という名前のシートに記入されています。

csvファイル化したいサンプルエクセルファイルの確認

今回はこのデータを、シート名と同じ名前のcsvファイルとして出力していくことにします。

つまりこのファイルをcsv化するとdata1.csvというファイルになるということです。

 

事前説明はこのくらいにして、実際にコードを書いていきましょう。

 

スポンサーリンク

シートをcsvファイルとして出力する方法

早速ですが、以下がシート内のデータをcsvファイルとして出力するVBAコードです。

◆シート内のデータをcsvファイルとして出力するVBAコード

Sub make_csv1()
    '変数の型を宣言
    Dim new_file As Variant
    '現在のシート名を記憶させる(csvファイル名として使う)
    new_file = ActiveSheet.Name
    'csvファイルとして保存する
    ActiveWorkbook.SaveAs ThisWorkbook.Path & "\" & new_file & ".csv", _
    FileFormat:=xlCSV, CreateBackup:=False
    'ファイルを閉じる
    ActiveWorkbook.Close
End Sub

基本的にはそれぞれの処理でコメントをつけておりますので、何をやっているかはなんとなくイメージできるはずです。

 

なお、最後のActiveWorkbook.Closeはなくても問題ありませんが、つけてないと私は結構混乱するのでつけるようにしています。

(気になる方ははずして実行してみてください。きっと混乱します。)

 

スポンサーリンク

サンプルコードの実行結果の確認

コードが記述できたら、実行してみましょう。

 

まずは実行前の状況確認です。

実行前は、以下のようにコードを記述してある(データ集計をした)ファイルだけが保存されている状態です。

マクロ実行前のフォルダの中身確認

このファイルを開いて、

開発⇒マクロ⇒さっき書いたコードを選択⇒実行

でマクロを実行します。

 

すると以下の画像のように何もないエクセル画面が表示されるはずです。

マクロ実行後のエクセル画面

この画面は閉じてもらって先ほどのフォルダの中身を確認してみましょう。

マクロ実行後のフォルダの中身確認

もともとのファイルと同じフォルダ内に、新たにcsvファイルが保存されていますね。

(ファイル名がもとのファイルのシート名に使われていたものと同じになっていることをご確認ください。)

 

新たにできたファイルの中身を開いてみると、以下のように最初にお見せしたデータと全く同じものが入っていますね。

マクロ実行前のcsvファイルの中身確認

というわけで、今回のコードを実行することで、しっかりとcsvファイルとして自動保存できることが確認できました。

 

また、以下の記事では今回使用した使用したスキルを複数のエクセルシートに一括適用する方法もご紹介しています。

興味があればこちらもあわせてご覧ください。

【VBA】複数シートを別々のcsvファイルとして一括出力する方法!

 

スポンサーリンク

おわりに

というわけで今回はシート上のデータをcsvファイルとして自動保存する方法をご紹介しました。

大量のデータをcsvとして出力する際にぜひご活用ください。

 

このように私のブログではエクセルスキルはもちろん、様々なプログラミングスキルを紹介しています。

・日々の残業時間を減らしたい。

・業務をもっと効率的にこなしたい。

・もっと勉強する時間を作りたい。

こんな思いを持っている人は、ぜひ他の記事も見てみてくださいね。

この記事が役に立ったという方は、ぜひ応援よろしくお願いします。

↓ 応援ボタン

にほんブログ村 IT技術ブログ VBAへ
にほんブログ村

それではまた!

コメント

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