你的心里有着一个人:打开工作簿后只显示用户窗体的方法探讨
来源:百度文库 编辑:中财网 时间:2024/10/06 16:02:40
除不断学习并分享新的文章外,将以前自认为好的文章慢慢捡起来,与大家共享,也存个档,呵呵……
问题起源
这是一位网友提出的问题:如何通过一个窗体录入数据,但是我又不想让人看到整个EXCEL工作薄。简单的说,就是打开某个EXCEL文件之后,我只看到一个窗体,然后我就通过该窗体录入数据,保存之后,所输入的数据就存在EXCEL文件里。
准备示例用户窗体
在VBE编辑器中,插入一个用户窗体,并在其中添加控件,如下图所示:
其相应的代码为:
问题起源
这是一位网友提出的问题:如何通过一个窗体录入数据,但是我又不想让人看到整个EXCEL工作薄。简单的说,就是打开某个EXCEL文件之后,我只看到一个窗体,然后我就通过该窗体录入数据,保存之后,所输入的数据就存在EXCEL文件里。
准备示例用户窗体
在VBE编辑器中,插入一个用户窗体,并在其中添加控件,如下图所示:
其相应的代码为:
Private Sub CommandButton1_Click()Dim i As Longi = Worksheets("sheet1").Range("A65536").End(xlUp).RowIf Range("A1") = "" ThenRange("A1") = TextBox1.TextElsei = i + 1Range("A" & i) = TextBox1.TextEnd IfTextBox1.Text = ""TextBox1.SetFocusEnd Sub
几种方法探讨
要使代码在工作簿打开时执行,则应利用Workbook_Open事件。一般应该将代码放置在ThisWorkbook模块中,这样在打开该工作簿时会执行其中的代码。
1、下面的代码,打开工作簿后,工作表均隐藏,只显示用户窗体,但Excel菜单和工具栏仍显示。
Private Sub Workbook_Open()UserForm1.ShowWorkbooks("Sample1.xls").Windows(1).Visible = FalseEnd Sub
详见示例Sample1.xls。
2、下面的代码,在打开工作簿后,将只显示用户窗体。
Private Sub Workbook_Open()'最小化窗口 Application.WindowState = xlMinimized'显示用户窗体 UserForm1.ShowEnd Sub
若需在关闭用户窗体后,工作簿也随之前闭,则在用户窗体关闭事件中,添加下面的代码:
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)ThisWorkbook.CloseEnd Sub
当关闭用户窗体时,Excel会提示用户是否保存对工作簿的修改,单击“是”将保存工作簿并退出。若要默认关闭用户窗体并自动保存工作簿,则添加下面的代码:
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)ThisWorkbook.Close SaveChanges:=TrueEnd Sub
详见示例Sample2.xls。
3、下面的示例代码,将彻底隐藏工作簿。在打开工作簿后,该工作簿将被隐藏,而只显示用户窗体,即将用户窗体当作用户输入界面,工作簿当作后台数据存储和处理。
Private Sub Workbook_Open()'隐藏工作簿 Application.Visible = False'显示用户窗体 UserForm1.ShowEnd Sub
详见示例Sample3.xls。
注意:此时,Excel将在后台运行,要退出该Excel应用程序,必须结束其进程。
excel的用户窗体显示时无法编辑表单,怎么办?
如何使打开多窗体时是显示的是单一的窗体
ACCESS的窗体怎么可以打开就全屏显示
excel的用户窗体显示时无法编辑表单,我该怎么办?
压缩文件正在打开时,删除它,打开的程序窗体还在显示,为什么
每次打开浏览器时都不能显示最大化的窗体,怎么办?
为什么有的程序打开后只有最小化,没有最大化,没有窗体,不能正常显示,以前打开是好好的
如何判断已显示出的窗体为模式窗体还是非模式窗体?
vb.net中在窗体上显示用什么方法?
欢迎共同探讨事业单位的人事工作?
北京平面设计师的工作心得,一起探讨
VB窗体之间的调用方法?
vb中调整窗体大小的方法
在VB中怎样用窗体中的用户控件来拖动无标题的窗体?
有谁知道显示qq隐身用户的方法啊
ASP.NET里用户控件和WEB窗体的区别?
当ACCESS打开时就自动弹出一个用户登陆窗体,如何做呢?
为什么打开IE时,窗体显示很慢很慢,而打开TT的速度很。快,用IE修复后还是很慢
如何用父窗体的控件对子窗体中打开的文件实现查找的功能?
地质工作探讨?
地质工作探讨? ..
地质工作探讨?
vb 打开窗体
英语教学方法探讨