Excel VBA: 禁用另存为功能时自动打开 运行
Excel VBA: Disable Auto Open when Save As function is run
我是 运行 一个代码,它获取输入的数据并创建文件的副本。那也行;但是,每次保存时都会打开新文件。我想保存文件而不自动打开它。我正在玩弄下面列出的一些代码:
Dim x As Object
Set x = Application.VBE.ActiveVBProject.VBComponents
x.Remove VBComponent:=x.Item("TestModule")
下面是“另存为”功能的完整代码。
Public sourceWB As Workbook
Public sourceWS As Worksheet
Public targetWB As Workbook
Public targetWS As Worksheet
Public sDate As String
Sub Main()
sDate = Format(Now(), "mm.dd.yyyy")
Set sourceWB = ThisWorkbook
Set sourceWS = sourceWB.Sheets("**FILE NAME DISCREET")
Set targetWB = Workbooks.Add
Dim theFilename As String
theFilename = "**FILE NAME DISCREET**" + sDate + ".xlsx"
targetWB.SaveAs FileName:= **"FILE LOCATION TO BE KEPT DISCREET, SORRY "**
Set targetWS = targetWB.Sheets("Sheet1")
sourceWS.Range("A1:H45").Copy targetWS.Range("A1")
targetWB.Save
End Sub
Private Sub ManhExportData_Click()
Call Main
End Sub
为了关闭您使用 Add
方法创建的工作簿,您应该对工作簿使用 Close
方法。
Public sourceWB As Workbook
Public sourceWS As Worksheet
Public targetWB As Workbook
Public targetWS As Worksheet
Public sDate As String
Sub Main()
sDate = Format(Now(), "mm.dd.yyyy")
Set sourceWB = ThisWorkbook
Set sourceWS = sourceWB.Sheets("**FILE NAME DISCREET")
Set targetWB = Workbooks.Add
Dim theFilename As String
theFilename = "**FILE NAME DISCREET**" + sDate + ".xlsx"
targetWB.SaveAs FileName:= **"FILE LOCATION TO BE KEPT DISCREET, SORRY "**
Set targetWS = targetWB.Sheets("Sheet1")
sourceWS.Range("A1:H45").Copy targetWS.Range("A1")
targetWB.Save
'Close the workbook
targetWB.Close
End Sub
Private Sub ManhExportData_Click()
Call Main
End Sub
我是 运行 一个代码,它获取输入的数据并创建文件的副本。那也行;但是,每次保存时都会打开新文件。我想保存文件而不自动打开它。我正在玩弄下面列出的一些代码:
Dim x As Object
Set x = Application.VBE.ActiveVBProject.VBComponents
x.Remove VBComponent:=x.Item("TestModule")
下面是“另存为”功能的完整代码。
Public sourceWB As Workbook
Public sourceWS As Worksheet
Public targetWB As Workbook
Public targetWS As Worksheet
Public sDate As String
Sub Main()
sDate = Format(Now(), "mm.dd.yyyy")
Set sourceWB = ThisWorkbook
Set sourceWS = sourceWB.Sheets("**FILE NAME DISCREET")
Set targetWB = Workbooks.Add
Dim theFilename As String
theFilename = "**FILE NAME DISCREET**" + sDate + ".xlsx"
targetWB.SaveAs FileName:= **"FILE LOCATION TO BE KEPT DISCREET, SORRY "**
Set targetWS = targetWB.Sheets("Sheet1")
sourceWS.Range("A1:H45").Copy targetWS.Range("A1")
targetWB.Save
End Sub
Private Sub ManhExportData_Click()
Call Main
End Sub
为了关闭您使用 Add
方法创建的工作簿,您应该对工作簿使用 Close
方法。
Public sourceWB As Workbook
Public sourceWS As Worksheet
Public targetWB As Workbook
Public targetWS As Worksheet
Public sDate As String
Sub Main()
sDate = Format(Now(), "mm.dd.yyyy")
Set sourceWB = ThisWorkbook
Set sourceWS = sourceWB.Sheets("**FILE NAME DISCREET")
Set targetWB = Workbooks.Add
Dim theFilename As String
theFilename = "**FILE NAME DISCREET**" + sDate + ".xlsx"
targetWB.SaveAs FileName:= **"FILE LOCATION TO BE KEPT DISCREET, SORRY "**
Set targetWS = targetWB.Sheets("Sheet1")
sourceWS.Range("A1:H45").Copy targetWS.Range("A1")
targetWB.Save
'Close the workbook
targetWB.Close
End Sub
Private Sub ManhExportData_Click()
Call Main
End Sub