エクスポートするやつ
最近、社員がメキメキとレンダリングの腕を上げて、なんだかよく分からないプレッシャーにさらされてドキドキしてます。どうも、のりーです。
前回は、CSVファイルからパラメータを流し込む方法を書きました。
今回は、CSVファイルをいちいち作るのはめんどいので、どこかで拾ってきたVBAを少しいじったものを公開しようと思います。
とはいえ、CSVに書き出すというのはかなり一般的なものなので、色々疑問点があるかもしれません。
一応、EXCELのファイルがある場所に作るようにしてあります。
これによって、前回言ってた、4列目から右は書いちゃだめよー。じゃなくて、6列目から書いていいよー。に変わります。ただ、5列目に何か書くと、エラーになりますので、必ず1列あけてね。メモを書いたり他の計算を入れれるのは良い事です。
「マクロ使った事ないよ!」という方はごめんなさい。説明してるサイトが沢山あるので、他のページを検索してくださいごめんなさい
参照設定も必要です。
VBAの画面の、ツールー参照設定より、Microsoft Scripting Runtime
をチェックしてください。
Sub CSVmacro() Application.ScreenUpdating = False Dim csv As String Dim line As String csv = "" Dim region As Range Set region = Range("A1").CurrentRegion Dim row As Range For Each row In region.Rows If row.Columns(1) <> "" Then line = "" Dim cell As Range For Each cell In row.Columns Dim item As Variant item = cell.Value If line = "" Then line = item Else line = line & "," & item End If Next If csv = "" Then csv = line Else csv = csv & vbCrLf & line End If End If Next Dim fso As FileSystemObject Set fso = New FileSystemObject Dim ts As TextStream Set ts = fso.OpenTextFile(ActiveWorkbook.Path & "csv.csv", ForWriting, True) ts.Write (csv) ts.Close Set ts = Nothing Set fso = Nothing Application.ScreenUpdating = True End Sub
こんな感じです。
ActiveWorkbook.Path & "csv.csv"の部分が、ワークブックと同じ場所にcsv.csv作るぜって意味なので、適当に変えるといいかもしれません。
私もVBAとか使った事ほとんど無かったので、よく分かってませんが、、、もしかすると、どこかネットで調べたものの方が勝手が良いかもしれません。し、
csv export マクロ フリー 等で検索するといろいろでてきます。是非、参考にしてみてくださいっ。
以上、エクスポートするマクロでした。