我有以下代码创建一个新工作簿并用一些数据填充它。
Dim wb as Workbook
Set wb = Workbooks.Add
wb.Range("A1") = "Dummy Text" 'Some code that populates data
wb.Activate 'wb.Activate or ThisWorkbook.Activate has no effect
新工作簿打开正常。我能够最小化它,使用菜单等,但无法单击关闭按钮。
如果我回到具有宏的原始工作簿并返回到新工作簿,我可以关闭。
我如何克服这个问题?不幸的是出于想法。
我的desidred用例
第1步:用户点击按钮 - >打开一个带有数据的新工作簿
步骤2:用户读取新工作簿中的信息并决定保存/关闭
但新工作簿中的关闭按钮无法工作,直到用户返回到原始工作簿并再次进入新工作簿。
答案 0 :(得分:0)
我认为你需要添加这一行:
Workbooks("source").Close
如果要关闭当前工作簿,请尝试以下操作:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If ActiveCell.Value = "CLOSE" Then
ThisWorkbook.Saved = True
ThisWorkbook.Close
End If
End Sub
答案 1 :(得分:0)
Sub Button1_Click()
Dim wb As Workbook
Set wb = Workbooks.Add
wb.Sheets("Sheet1").Range("A1") = "Dummy Text" 'Some code that populates data
wb.Activate 'wb.Activate or ThisWorkbook.Activate has no effect
End Sub
我的excel运行正常。我点击关闭按钮,它询问我是否要保存。
答案 2 :(得分:0)
代码
之后Dim wb as Workbook
Set wb = Workbooks.Add
wb.Range("A1") = "Dummy Text"
插入
set wb = nothing
这将释放您的新工作簿,您可以使用" X"在右上角。
P.S。:对不起我的英文
答案 3 :(得分:0)
显示用户表单时,请确保使用“ .Show 0”。