エクスポートするやつ
最近、社員がメキメキとレンダリングの腕を上げて、なんだかよく分からないプレッシャーにさらされてドキドキしてます。どうも、のりーです。
前回は、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 マクロ フリー 等で検索するといろいろでてきます。是非、参考にしてみてくださいっ。
以上、エクスポートするマクロでした。