全くの初心者です。
名前を指定して開いた.xlsxのブックを.csvにしてファイル名は元のままで指定フォルダへ保存したいです。
ファイル名:売上_yyyymmddhhmm(yyyymmddhhmmの部分は毎日変わります)
Application.GetOpenFilenameで名前を指定して.xlsxのブックを開いて下記を実施すると、
コピーファイルが出来たところでエラーとなります。
csvで保存するにはどうすればいいのでしょうか。
Dim book1 As Workbook
Dim i As String
ActiveSheet.copy
Set book1 = ActiveWorkbook
i = Range("売上_").Value
book1.SaveAs Filename:="\c" & i & ".csv", _
FileFormat:=xlTextPrinter
book1.Close False
実行時エラー1004 Rangeメゾッドは失敗しましたGlobalオブジェクト
i = Range("*売上_*").Value
試したこと
i =Range()の中身を変えてみましたが、変わらず。
補足情報(FW/ツールのバージョンなど)
コピーを省きました。また、元ファイルと同じファイル名にすることにこだわらないことにして
下記のようにしてみました。
Sub Macro1()
SetCurrentDirectory "\○○○\デスクトップ\売上集計"
Dim OpenFileName As String OpenFileName = Application.GetOpenFilename("Microsoft Excelブック,*.xls?") If OpenFileName <> "False" Then Workbooks.Open OpenFileName Else MsgBox "キャンセルされました" End If
End Sub
Sub Macro2()
With ActiveWorkbook .SaveAs Filename:= "\○○○\デスクトップ\売上.csv" _ , FileFormat:=xlCSV .Close SaveChanges:=False End With
回答2件
あなたの回答
tips
プレビュー