0
我有一組單元格B32,直到R32長度和B32到B51寬度。我想在打開表單時將此塊隱藏起始處。我已將此塊命名爲「分析」。隱藏/取消隱藏excel中的單元格組按鈕
工作表中有一個按鈕。當按下按鈕時,我想取消隱藏該塊。我是Excel Vba的新手。我想知道執行此操作的語法/代碼。
在此先感謝。
Ananda
我有一組單元格B32,直到R32長度和B32到B51寬度。我想在打開表單時將此塊隱藏起始處。我已將此塊命名爲「分析」。隱藏/取消隱藏excel中的單元格組按鈕
工作表中有一個按鈕。當按下按鈕時,我想取消隱藏該塊。我是Excel Vba的新手。我想知道執行此操作的語法/代碼。
在此先感謝。
Ananda
你不能只隱藏像MattCrum提到的區域。
你有3個選擇,就我而言現在
Range 32:51
和你的主片(數據未空單元格),要麼叫
Sheet1
或更改
Sheet1
的代碼,以滿足工作表在
project explorer
VBE (Visual Basic Editor)
雙擊
ThisWorkbook
命名
Private Sub Workbook_Open()
ThisWorkbook.Sheets("Sheet1").Rows(32 & ":" & 51).hidden = True
End Sub
右鍵單擊該文件夾上和Insert
新Module
,然後將此代碼粘貼
Sub unhide()
ThisWorkbook.Sheets("Sheet1").Rows(32 & ":" & 51).hidden = False
End Sub
現在,添加一個按鈕,在電子表格上,點擊右鍵,分配宏觀叫unhide
它。
保存所做的修改工作簿保存爲* .XLSM文件
請注意,當你現在打開工作簿,行32至51是隱藏的。點擊按鈕將取消隱藏它們。
"hide"
的內容。
按照步驟1,用
ThisWorkbook.Sheets("Sheet1").Range("B32:R51").Font.Color = RGB(0, 0, 0)
現在更換
ThisWorkbook.Sheets("Sheet1").Rows(32 & ":" & 51).hidden = True
與此
ThisWorkbook.Sheets("Sheet1").Range("B32:R51").Font.Color = RGB(255, 255, 255)
,並在Module
(在unhide
子程序)的代碼,一切正常相似到第1步,除了你的"hiding"
(改變)字體顏色而不是隱藏行。不是一個偉大的方式,但如果你的作品,然後冷卻
Option Explicit
Private Sub Workbook_Open()
Application.ScreenUpdating = False
Set ws = ThisWorkbook.Sheets("Sheet1")
Worksheets.Add(After:=Worksheets(Worksheets.Count)).Name = "hiddenSheet"
Set hs = ThisWorkbook.Sheets(Worksheets.Count)
hs.Visible = xlSheetHidden
ws.Range("B32:R51").Select
Selection.Copy
With hs
.Activate
.Range("B32").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
End With
ws.Activate
ws.Rows(32 & ":" & 51).Delete
Application.ScreenUpdating = True
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Call deleteHidden(Worksheets.Count)
End Sub
而且隨着
Option Explicit
Public ws As Worksheet, hs As Worksheet
Sub unhide()
With hs
.Activate
.Rows("32:51").Select
Selection.Copy
End With
With ws
.Activate
.Rows("32:32").Select
Selection.Insert Shift:=xlDown
End With
End Sub
Sub deleteHidden(num&)
Application.DisplayAlerts = False
Worksheets(num).Delete
Application.DisplayAlerts = True
Set hs = Nothing
End Sub
這是
Module1
的代碼替換ThisWorkbook
下的代碼一個容易谷歌的答案,我想。 – 2013-05-13 09:00:08我在Google中檢出的代碼無法使用。 – anand 2013-05-13 09:16:13
您正在使用哪些代碼?你在原來的問題中沒有提到。 – 2013-05-13 09:34:02