当前位置:首页 » 办公资讯 » excel宏程序中怎样隐藏窗体

excel宏程序中怎样隐藏窗体

发布时间: 2022-11-27 01:34:11

excel VBA问题! 我想用使用复选框 复选框 选中时隐藏B-C列 不选中时不隐藏!

方法一

如果是在工作表中使用复选框,右击复选框,在快捷菜单中单击选择“设置控件格式”,打开对话框如下图所示设置:

仅供参考!

Ⅱ 用VBA或宏,显示和隐藏EXCEL中的工作表

Sheet2里面的返回按钮请指定这个宏
Public
Sub
隐藏()
Sheets("sheet1").Select
ActiveSheet.Visible
=
False
End
Sub
Sheet1里面的进入按钮请指定这个宏
Public
Sub
显示()
Sheets("Sheet2").Visible
=
True
Sheets("sheet2").Select
End
Sub
一点都不懂是指什么?从没用过宏代码??
那在Sheet1建个按钮(视图-工具栏-窗体,拉个按钮的控件出来,这个应该看得出来哪个是按钮),然后它会弹出一个指定宏的窗口来(如无,则在建好的按钮上按右键,有选择的),点新建,会进入一个模块窗口,把代码弄进去,就可以用了。
另外一个,同样道理。
如果仍不懂。。。建议先看一些关于EXCEL
VBA的入门知识。

Ⅲ excel怎么隐藏工作簿

excel如何隐藏工作表excel中如何隐藏和取消隐藏工作表及其行、
方法一。 打开一篇工作簿,选中我们需要隐藏的工作表,切换到“开始”选项卡,执行“单元格”组中的“格式”命令,并在弹出的下拉列表中选择“隐藏和取消隐藏”组中的“隐藏工作表”选项,至此,我们选中的工作表就会被隐藏。
方法二。 选中窗体下方我们需要隐藏的工作表名,单击鼠标右键,在弹出的快捷菜单中选择“隐藏”选项

Ⅳ excel VBA做了个登录系统,然后根据这个登录的用户,隐藏或显示某个表中的某一列。这个功能怎么实现

在工作中可能遇到这种情况,就是有一个录入工作需要多人协同完成,每个人所要录入的部份又不相同,于是就在同一个EXCEL工作簿中建立多个工作表,当某一个人录入时,只打开他需要操作的那个工作表,其他工作表自动隐藏起来,防止被误操作。
我看到网上有不少朋友在找有这个功能的表格,于是就试着做了一个,跟大家分享一下。
注意:由于EXCEL的VBA安全性非常低,网上有很多破解的方法,所以对那些数据安全性要求较高的请不要用这种方法。
一、表格部份
这个工作簿中有多个工作表,分成三类。
第一类:工作簿的第一个工作表,里面没有数据,只用于显示登录窗口,起名为“登录”。由于在VBA代码中要调用这个工作表,在实际使用时,这个名字不要改动。
第二类:工作簿的第二个工作表,里面存储了各登录人员的姓名、登录密码以及各人要操作的工作表(权限),起名为“设置”,这个工作表的名字同样不要修改,里面的数据位置也不要改动。
第三类:工作簿的第三及以后的工作表,这些表都是登录人员要操作的表格,应根据自己的需要设置,我为了介绍方便,给他们起名为“表一”、“表二”、...,可以添加多个,表的名字也可任意。
在做上面这些表时,只要注意“登录”表的名字不要改、“设置”表的名字与数据位置不要改,其他部份可随意。
提示:如果非要改变“登录”表与“设置”表的名字,必须在EXCEL中改名后,把VBA代码中相关的名字也改过来才能正常使用。
二、VBA部份
上面表格部份完成后,就需要做VBA代码了,在EXCEL窗口按ALT+F11调出VBA窗口。
1、登录窗体
在工具栏中按“插入-用户窗体”,添加一个窗体。
将插入的窗体调整到适当大小。
2、代码
在所添加的窗体上双击鼠标,然后把下面代码粘贴进去:
Private Sub CommandButton1_Click()
On Error GoTo 10 '当姓名与密码不对应时,会出现错误,转到10语句处理
Dim n As String
Set sh = Sheets("设置")
na = TextBox1.Text: ps = TextBox2.Text '取得登录窗口中的姓名与密码
If na = "" Or ps = "" Then MsgBox "未输入用户名或密码,不能登录", , "提示": Exit Sub
s = WorksheetFunction.Match(na, sh.[a:a], 0) '查找用户在A列的位置
n = sh.Cells(s, 2) '取出“设置”表中的权限密码,字符型
If n <> ps Then GoTo 10
Call 隐藏表
'检查一下“设置”表的C列及右边各格中的内容,有内容的,说明可以打开内容所指定的工作表
For i = 4 To 255
b = sh.Cells(s, i).Value
If b = 1 And sh.Cells(1, i) <> "" Then '单元格为1时,表示有权限打开这个表,就让它显示出来
Sheets(sh.Cells(1, i).Value).Visible = -1
End If
Next
Unload UserForm1 '退出窗体
Exit Sub
10:
MsgBox "姓名或密码错误,不能登录", , "提示"
End Sub
Sub 隐藏表()
TextBox1.Text = "": TextBox2.Text = ""
For i = 1 To Worksheets.Count
If Sheets(i).Name <> "登录" Then
Sheets(i).Visible = 2
Else
Sheets(i).Visible = -1 '只让“登录”表显示出来
End If
Next
End Sub
Private Sub CommandButton2_Click()
Call 隐藏表
End Sub
Private Sub UserForm_Activate()
'窗体出现在屏幕上的位置
Me.Top = 220
Me.Left = 120
End Sub
代码中都做了注释,看不明白也不影响使用,只要粘贴上就行了。
再用鼠标双击左侧的thisworkbook模块,把下面代码粘贴上去。
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Call UserForm1.隐藏表
ActiveWorkbook.Save '保存当前工作簿文档
End Sub
Private Sub Workbook_Open()
Call UserForm1.隐藏表
UserForm1.Show '加载登录窗体
End Sub
再用鼠标双击左侧“设置”表模块,把下面代码粘贴上去。
Private Sub Worksheet_Activate()
'将各工作表的名字填入第一行中
For i = 2 To Worksheets.Count
Cells(1, i + 2) = Sheets(i).Name
Next
End Sub
再用鼠标双击左侧“登录”表模块,把下面代码粘贴上去。
最后给VBA加上一个保护密码,防止其他人员改动代码。
按“工具-VBA Project属性”,调出“VBA Project”属性窗口,选“保护”选项卡,按下图设置就行了。
至此就完成了整个制做过程,关闭VBA窗口回到EXCEL窗口,就可以在这个工作簿中添加你要操作的全部工作表了,注意添加的位置在“设置”工作表的右边。
使用时的注意事项:
1、在“登录”工作表中,登录窗体是自动显示的,只要输入姓名、密码正确,按“登录”按钮,就会根据“设置”表中的权限,自动打开该操作者所要操作的工作表,与他无关的表会自动隐藏。
2、当以管理员身份(本例中的“张三”)登录后,只要一打开“设置”工作表,就能自动在D1单元格及右边的各单元格中更新工作表名字。
3、任何操作者在操作完成后,要在“登录”窗体上点击“退出”按钮,以便关闭所操作的工作表。
4、为了保证登录功能正常运行,在打开工作簿时一定要启用宏。另外,为了保证工作簿在关闭时只显示“登录”工作表,会自动将其他表隐藏并保存工作簿。
补充说明:
如果想在登录窗口的密码框不显示“明文”,只显示一串星号“***”,可以用下面方法设置。
打开VBA窗口,用鼠标选中登录窗体的密码文本框textbox2,在左边“属性”窗口中找到passwordChar属性,输入一个星号就行了。
补充2
有朋友提出,在显示登录窗口时,不想手工输入“姓名”,最好用下拉框选择“姓名”,想实现这个功能,只要把登录窗口中的姓名“文本框”删除,换成一个“复合框”,再改一下代码就可以了。
1、改文本框为复合框
2、修改代码
分两步,先把原代码中的所有“TextBox1.Text”替换成“ComboBox1.Text”(提示:可以在VBA窗口中按“编辑-替换”,输入内容后选“全部替换”即可)。
再将原代码中的下面这段:
Private Sub UserForm_Activate()
'窗体出现在屏幕上的位置
Me.Top = 220
Me.Left = 120
End Sub
替换成:
Private Sub UserForm_Activate()
'窗体出现在屏幕上的位置
Me.Top = 220
Me.Left = 120
For i = 2 To Sheets("设置").[a65536].End(xlUp).Row
ComboBox1.AddItem Sheets("设置").Cells(i, 1).Value
Next
End Sub

Ⅳ 我用VBA做的程序在打开时隐藏EXCEL程序,只显示窗体,但打开其他EXCEL表格时,程序的父对象又被显示了

可以将VBA保存成 加载宏 .xlam 或 .xla 在其他Excel中可以加载此项,但不会出现此项的窗口(表格). 你里面写的 函数、方法等可以在别的Excel中使用。

Ⅵ EXCEL VBA,请教高手,怎么检查隐藏着的窗口...

全选工作表,
右键,
设置单元格格式,
保护
取消勾选
锁定
隐藏
选择有公式的单元格,右键,设置单元格格式,保护
勾选
锁定
隐藏
然后点击
工具--保护工作表
,设置密码
确定

Ⅶ excel 隐藏和显示某列的宏

Range("L:R").EntireColumn.Hidden = True
Columns("C:J").EntireColumn.Hidden = False
这样就可以的了。
你是想L到R隐藏,C到J显示。

Ⅷ vba打开excel时隐藏表格并运行程序

所以我默认你有VBA基础,简单回答如下

  1. 关于隐藏表格代码如图1,区别在于UserForm.Show后面加0,作用是窗体可移动可作为下一层,允许其他编辑

  2. 需要再次调用表格如图2,思路是在窗体上加入一个命令按钮,按钮的代码如图

图1 双击ThisWorkbook代码复制到右边空白处

Ⅸ VBA问题,如何关闭窗体

具体操作步骤如下:

1、首先,打开需要编辑的Excel表,右键单击工作表并选择打开“查看代码”,如下图所示,然后进入下一步。

Ⅹ Excel VBA 隐藏当前工作簿

代码如下:(注意代码不能写在标准模块里)

PrivateSubWorkbook_Open()
ThisWorkbook.Windows(1).Visible=False
EndSub

热点内容
马路上汽车的噪音在多少分贝 发布:2023-08-31 22:08:23 浏览:2126
应孕棒多少钱一盒 发布:2023-08-31 22:08:21 浏览:1594
标准养老金一年能领多少钱 发布:2023-08-31 22:05:05 浏览:1893
湖北通城接网线多少钱一个月 发布:2023-08-31 21:59:51 浏览:1964
开随车吊车多少钱一个月 发布:2023-08-31 21:55:06 浏览:1718
京东付尾款怎么知道前多少名 发布:2023-08-31 21:52:58 浏览:2045
在学校租铺面一个月要多少钱 发布:2023-08-31 21:52:09 浏览:2189
2寸有多少厘米 发布:2023-08-31 21:50:34 浏览:1825
知道电压如何算一小时多少电 发布:2023-08-31 21:46:20 浏览:1823
金手镯54号圈周长是多少厘米 发布:2023-08-31 21:44:28 浏览:1970