在Ribbon工具欄中有2個功能按鈕,它們是否可用取決於worksheet(sheet1)中的內容。工具
button1須要在sheet1中存在某個關鍵字(好比「默認勾選」)的時候可用,在sheet1初始化和內容變動事件中添加代碼,下面的Ribbon1.Button1是我項目中的工具欄和按鈕名稱spa
Public
Function checkRow()
As
Boolean
Dim findCheck
As Excel.Range = findLastCell(
"
默認勾選
")
'
findLastCell的定義見以前的blog
If (findCheck
Is
Nothing)
Then
Return
False
Else
Return
True
End
If
End Function
Private
Sub Sheet1_Change(Target
As Microsoft.Office.Interop.Excel.Range)
Handles
Me.Change
Globals.Ribbons.Ribbon1.Button1.Enabled = checkKpiRow()
End Sub
Private
Sub Sheet1_Startup()
Handles
Me.Startup
Globals.Ribbons.Ribbon1.Button1.Enabled = checkKpiRow()
End Sub
button2須要當用戶選中sheet1中某個關鍵字單元格(好比「名稱」)的時候可用,在sheet1初始化、SelectionChange事件、工做表激活事件中添加代碼
Private
Function isSelectNameCell()
As
Boolean
With Application
If (.ActiveCell.Value
Is
Nothing)
Then
Return
False
End
If
If (.ActiveCell.Value.ToString =
"
名稱
")
Then
Return
True
End
If
Return
False
End
With
End Function
Private
Sub Sheet1_Startup()
Handles
Me.Startup
Globals.Ribbons.Ribbon1.Button2.Enabled = isSelectNameCell()
End Sub
Private
Sub Sheet1_SelectionChange(Target
As Microsoft.Office.Interop.Excel.Range)
Handles
Me.SelectionChange
Globals.Ribbons.Ribbon1.Button2.Enabled = isSelectNameCell()
End Sub
Private
Sub Sheet1_ActivateEvent()
Handles
Me.ActivateEvent
Globals.Ribbons.Ribbon1.Button2.Enabled = isSelectNameCell()
End Sub