137:マクロ素材 CSVで保存

130:マクロ素材

データを作成して運用する場合、CSVで保管することが多いと思います。そのCSVの保存方法について記載します、

保存する構文

以下の記載方法となります。覚える必要は無いと思います。以下をコピーしてください。

 ActiveWorkbook.SaveAs Filename:=CSV保存名, _
    FileFormat:=xlCSV, CreateBackup:=False

今のワークブックを、変数(csv保存名)の中に入っている文字列で、csv形式で、バックアップを作らずに保存しなさい。というように、読めます。

付け加え

少し、上下に付け加えます。まず、①ファイルを保存するときに、聞いてくるwindowを出さなくする。②CSV保存名で保存する。③そのファイルを閉じる。④ファイルを保存するときに聞いてくるwindowを出すように戻すという内容です。

           Application.DisplayAlerts = False 'ファイルクローズ時に保管するかどうか聞いてくるのをOFF
 ActiveWorkbook.SaveAs Filename:=CSV保存名, _
    FileFormat:=xlCSV, CreateBackup:=False
            ActiveWindow.Close SaveChanges:=True
    Application.DisplayAlerts = True 'ファイルクローズ時に保管するかどうか聞いてくるのをON

windowがイチイチ出てくると、作業の邪魔です。windowが一時的にでないようにして、でるように戻しております。

CSV保存名を作成

csv保存名は、固定の名称よりは、毎日変更された方が、前回の物が残るので、いつも新しいファイル名が良いと思います。

それには、①日付を入れる。②その内容を入れるで特定できると思います。

Sub 今日の日付を作る()

Sub 今日の日付を作る()

年 = Year(Date)

If Month(Date) < 10 Then
    月 = "0" & Month(Date)
Else
    月 = Month(Date)
End If

If Day(Date) < 10 Then
    日 = "0" & Day(Date)
Else
    日 = Day(Date)
End If

日付 = 年 & 月 & 日
MsgBox 日付

End Sub

これで、変数「日付」に日付(YYYYMMDD)が入りました。

IF構文を使っているのは、月が1月から9月までは、西暦に続いて月がきてしまうので、”0”を追加しています。これで、20218とかならずに、202108となります。

日も同じで、1日から9日までは、その前に0を追加するようにしております。10日以後は、2桁なので、そのまま使います。これで、20210903(YYYYMMDD)というようになります。

この日付だけでも他になければ問題ありませんが、何でも良いのですが、念のため”作業”を後に加えて、

csv保存名 = ”C:\パス名” & 日付 & “作業.csv”

としてあげると、作業した日の記録が取れるようになります。パス名は、自分で設定してください。

まとめると

以下のようになります。

Sub csvで保存()

年 = Year(Date)

If Month(Date) < 10 Then
    月 = "0" & Month(Date)
Else
    月 = Month(Date)
End If

If Day(Date) < 10 Then
    日 = "0" & Day(Date)
Else
    日 = Day(Date)
End If

日付 = 年 & 月 & 日

CSV保存名 = "C:\Users\Public\" & 日付 & "作業.csv"

Application.DisplayAlerts = False
ActiveWorkbook.SaveAs Filename:=CSV保存名, _
    FileFormat:=xlCSV, CreateBackup:=False
ActiveWindow.Close SaveChanges:=True
Application.DisplayAlerts = True

End Sub

moduleにコピーしてブロックとしてお使いください。

ここでは、フォルダ名(ディレクトリ)を”C:\Users\Public\” & 日付 & “作業.csv”としましたが、ここは自由に変更して実行してください。ここでは、日付をYYYYMMDDとしましたが、その上に年のフォルダを作るなら”C:\Users\Public\” & 年 & ”¥” & 月 & 日 & “作業.csv”としても良いです。自由に変更してみてください。

137:マクロ素材 CSVで保存

コメント

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