Board logo

標題: 工作表不被刪除 [打印本頁]

作者: sping    時間: 2010-7-18 22:39     標題: 工作表不被刪除

本帖最後由 sping 於 2010-7-18 22:47 編輯

我想保護工作表不被刪除,但又不想使用保護工作簿功能,所以用了下面的程式碼是要來防止工作簿上的工作表被刪除,
雖然已經可以達到想要的功能,但是執行程式碼後再開其他excel檔案時,發現其他檔案的工作表也變成不能刪除,
變成必須再執行相反的程式碼來解除限制,這樣操作較不方便,不曉得有沒有人可以幫忙解決,使它不會產生其他
檔案的工作表開啟後也變成不能刪除?

Sub f5e()
   Dim sk As Office.CommandBarControl
    For Each sk In Application.CommandBars.FindControls(Id:=847)
        sk.Enabled = False
    Next sk
End Sub
作者: Hsieh    時間: 2010-7-18 23:18

回復 1# sping
thisworkbook模組
  1. Private Sub Workbook_WindowActivate(ByVal Wn As Window)
  2.    Dim sk As Office.CommandBarControl
  3.     For Each sk In Application.CommandBars.FindControls(ID:=847)
  4.         sk.Enabled = False
  5.     Next sk

  6. End Sub

  7. Private Sub Workbook_WindowDeactivate(ByVal Wn As Window)
  8.    Dim sk As Office.CommandBarControl
  9.     For Each sk In Application.CommandBars.FindControls(ID:=847)
  10.         sk.Enabled = True
  11.     Next sk

  12. End Sub
複製代碼

作者: sping    時間: 2010-7-19 07:06

回復 2# Hsieh

可以用了, 謝謝Hsieh版主的協助




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)