繁体   English   中英

Excel宏保存

[英]Excel Macro to save

我知道我可能应该在Access或VB中这样做,但是我不知道如何使用。 目前,我在表单末尾有一个提交按钮,用于保存和关闭工作簿(无论输入到特定单元格中的内容如何)。

我正在寻找一种能够执行相同操作但将工作表从工作簿中分离出来的方法。 因此,它仅将工作表另存为自己的excel文件,并将名称输入到特定单元格中。 下面是我当前正在使用的宏。

Sub Saveworkbook()
Application.DisplayAlerts = False
Dim dName$, vName$
    dName = Range("B8")
    vName = ActiveWorkbook.FullName
    ActiveWorkbook.SaveAs "W:\Test\" & dName
    ActiveWorkbook.SaveAs vName
    ActiveWorkbook.Close
Application.DisplayAlerts = True
End Sub

如果可以添加日期和计算机用户以保存名称,但不是必不可少的,那也很酷。

预先感谢山姆

像这样-

Sub SaveSheet()

Dim wbkDashboard As Workbook
Dim wsTarget As Worksheet
Set wsTarget = Thisworkbook.worksheets("Sheet1")

Dim strFileName As String
strFileName = wsTarget.Range("B8").Value _
    & Format(Now, "ddmmyyyy") & "-" & Environ("username") & ".xlsx"

Set wbkDashboard = Workbooks.Add
wsTarget .Copy Before:=wbkDashboard.Sheets(1)

For intSheetCount = 2 To wbkDashboard.Sheets.Count
    wbkDashboard.Sheets(2).Delete
Next

wbkDashboard.SaveAs "W:\Test\" & wsTarget.Range("B8").Value  _
    & Format(Now, "ddmmyyyy") & "-" & Environ("username") & ".xlsx"

wbkDashboard.Close
wsTarget.Range("B8").Value= strFileName

Set wsTarget = Nothing
Set wbkDashboard = Nothing
End Sub

这段代码将保存您在当前版本中创建的所有更改,然后仅将活动表另存为带有用户名和日期的新工作簿(在环境变量上贷记为@Will)。

Sub Saveworkbook()
Application.DisplayAlerts = False
Dim Sheet1 As Worksheet
Dim dName$, vName$, sName$
    dName = Range("B8")
    vName = ActiveWorkbook.FullName
    sName = ActiveWorkbook.ActiveSheet.Name
    For Each Sheet1 In ActiveWorkbook.Sheets
    If Not Sheet1.Name = sName Then
    Sheet1.Delete
    End If
    Next Sheet1

    ActiveWorkbook.SaveAs "W:\Test\" & dName & "_" & Environ("username") & "_" & Format(Now, "ddmmyy") & "xlsx"
    ActiveWorkbook.Close
Application.DisplayAlerts = True
End Sub

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM