當前位置:首頁 » 辦公資訊 » 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