自动保存文件

时间:2013-10-28 08:21:45

标签: excel vba excel-vba

我每10分钟将数据导入一个文本文件。每天一次,名为book1的excel文件会在下午5点自动打开并运行一个宏。此宏导入数据(从文本文件),绘制图表,保存文件,然后关闭保存的文件和book1。

我需要将文件保存到同一位置,但每天都有不同的文件名。它可以是LOGTEST1,LOGEST2。或DAY1或DAY2。文件名无关紧要,只要每天一次,我的保存位置就会出现一个新文件。在30天内,我应该有30个文件。

这是我将其保存为单个文件的代码。任何人都可以帮助我使用相同的宏和相同的book1文件动态保存它吗?

Sub Auto_Open()
'
' Auto_Open Macro
'

'
    Workbooks.OpenText Filename:="C:\Users\Pabo\Desktop\LOGTEST.txt", Origin _
        :=437, StartRow:=1, DataType:=xlDelimited, TextQualifier:=xlDoubleQuote _
        , ConsecutiveDelimiter:=False, Tab:=False, Semicolon:=True, Comma:= _
        False, Space:=False, Other:=False, FieldInfo:=Array(Array(1, 4), Array(2, 1) _
        ), TrailingMinusNumbers:=True
    Columns("A:A").EntireColumn.AutoFit
    Columns("A:B").Select
    ActiveWindow.SmallScroll Down:=-9
    ActiveSheet.Shapes.AddChart.Select
    ActiveChart.SetSourceData Source:=Range("'LOGTEST'!$A:$B")
    ActiveChart.ChartType = xlXYScatterSmoothNoMarkers
    ActiveWorkbook.SaveAs Filename:="C:\Users\Pablo\Desktop\LOGTEST.xlsx", _
        FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False

    ActiveWorkbook.Close savechanges = True
    Application.Quit
End Sub

1 个答案:

答案 0 :(得分:1)

将您的文件名设置为包括今天的日期和月份。类似的东西:

myFileName = "myFile_" & Month(Now) & "_" & Day(Now)
ActiveWorkbook.SaveAs Filename:="C:\Users\Pablo\Desktop\" & myFileName, _
    FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False