楼主 kevinchengcw |
Q: 如何在打开excel文件时隐藏工作簿内容窗口? A: 很多时候在制作类似登陆窗口的界面时,不希望在未登陆前看到文件的内容,但是用application.visible又会隐藏其他的打开程序界面,本例引用一个例子演示利用windows函数实现隐藏工作簿内容的方法,代码如下:
在要恢复的时候只需要再来一句Windows(ThisWorkbook.Name).Visible = True就可以了。 附示例文件。 ![]() |
2楼 ZHM5420 |
谢谢,可能是我说的问题不是很详细,但是你的回复给我极大的提示:可以这样判断:当启动目标EXCEL文件时,VBA判断打开的EXCEL文件是否电脑中打开的第一个excel文件,如果是则执行:Application.Visible = False, 如果否,则执行你提供的代码。 再次谢谢啊!! |
3楼 ZHM5420 |
修改代码后,较完善的启动窗口代码 Private Sub Workbook_Open() On Error Resume Next 文件名 = ThisWorkbook.Name If Application.Workbooks.Count = 1 Then '确认工作簿打开的数量 Application.Visible = False Else Windows(文件名).Visible = False End If UserForm1.Show End Sub USERFORM1窗体中代码 Private Sub CommandButton1_Click() '进入工作簿 Unload UserForm1 On Error Resume Next Application.Visible = True Windows(ThisWorkbook.Name).Visible = True End Sub Private Sub CommandButton2_Click() '退出工作簿 On Error Resume Next Unload UserForm1 Workbooks(文件名).Saved = True '关闭前不保存 Windows(文件名).Close End Sub Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer) If CloseMode = 0 Then Cancel = 1 '当点击窗体关闭按钮时,使其失效 End If End Sub 模块中代码 Public 文件名 As String '定义打开工作薄文件名称的变量 ![]() |