• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセル複数シートCSVファイル名に時間を付ける)

エクセル複数シートCSVファイル名に時間を付ける

このQ&Aのポイント
  • エクセルVBAの超初心者なので色々この場所で調べたりして勉強しております。どうもうまくいかないため、ご指導お願いします。
  • 1つのBOOKには4つのシートがあり、最後のひとつ以外の3枚のシートをCSV形式で保存したいです。保存する際には、シート名+日付+時間の形式で保存したいです。
  • 日中に何度も同じものを保存して比較し、経歴を残していきたいと考えています。

質問者が選んだベストアンサー

  • ベストアンサー
  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.3

> ActiveSheet.Nameのところには、保存したい3枚のシート名を書けばできるのかなぁ > 3枚だけ選ぶってのは難しいんでしょうか。 3枚だけ選ぶのは面倒なので「初期設定」という名前のシート以外全部選んでCSVで保存するマクロを書いてみました。 Sub test() Dim sh As Worksheet For Each sh In ActiveWorkbook.Worksheets sh.Activate If ActiveSheet.Name <> "初期設定" Then sh.Move ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & _ "\" & ActiveSheet.Name & "-" & CStr(Format(Date, "yymmdd") & "-" & Format(Time, "hhmmss")), FileFormat:=xlCSV ActiveWorkbook.Close (False) End If Next End Sub

その他の回答 (2)

  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.2

失礼しました、シート名もでしたね。 Flname = "c:\" & ActiveSheet.Name & "-" & CStr(Format(Date, "yymmdd") & "-" & Format(Time, "hhmmss"))

hou66
質問者

お礼

ありがとうございます。 大変ためになります ActiveSheet.Nameのところには、保存したい3枚のシート名を書けばできるのかなぁ 3枚だけ選ぶってのは難しいんでしょうか。

  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.1

Flname="c:\"+CStr(Format(Date, "yymmdd") & Format(Time, "hhmmss"))

関連するQ&A