VBA是不是我的獨特優勢,但在這裏我們去:Excel 2010中:宏隱藏列組
我想觸發宏一旦一組列是隱藏或顯示。我怎樣才能存檔這個?
我以前的研究結果
唯一的好提示關於這個我能找到在MSDN this討論。在這裏,一個解決方案是使用下面的方式起草單位:
從XLSX文件的根目錄創建一個文件customUI\customUI.xml
與內容
<customUI xmlns="http://schemas.microsoft.com/office/2006/01/customui" >
<commands >
<command
idMso="ColumnsHide"
onAction="ColumnHide_onAction"/>
<command
idMso="ColumnsUnhide"
onAction="ColumnUnhide_onAction"/>
</commands >
</customUI >
,並添加
<Relationship Id="edTAB" Type="http://schemas.microsoft.com/office/2006/relationships/ui/extensibility" Target="customUI/customUI.xml" />
到_rels\_rels.xml
。 (所有這一切都可能是更容易使用Visual Studio,但我沒有獲得這種先進的工具在微軟的世界......)現在,宏可以採用以下方式:
Public Sub ColumnHide_onAction(control As IRibbonControl, ByRef cancelDefault)
'
' Code for onAction callback. Ribbon control command
'
MsgBox "Ribbon Column Hide"
cancelDefault = False
End Sub
Public Sub ColumnUnhide_onAction(control As IRibbonControl, ByRef cancelDefault)
'
' Code for onAction callback. Ribbon control command
'
MsgBox "Ribbon Column Unhide"
cancelDefault = False
End Sub
這種做法完全捕獲隱藏和取消隱藏欄目,但不隱藏和取消隱藏羣組。所以,關閉,但不是那裏。
從here下載可能的idMso
值,我得到了GroupViewShowHide
控件的通知。不過,使用與ColumnsHide
或ColumnsUnhide
相同的方式不會歸檔所需的結果。
任何想法?
if(cell.outlinelevel> 0)then cell.entirerow.showdetail = true/false –