返回列表 上一主題 發帖

[發問] (已解決)刪除工作表裡面所有的定義名稱

[發問] (已解決)刪除工作表裡面所有的定義名稱

本帖最後由 freeffly 於 2012-2-22 17:04 編輯

如果我的檔案裡面有些工作表裡面,有專門給該工作表使用的定義名稱
有什麼方式可以一次刪除這些專門指定工作表的定義名稱嗎?
字典兩各字 還真難理解

Sub dm()
For Each c In ActiveWorkbook.Names
   c.Delete
Next
End Sub

TOP

回復 2# chin15


    感謝
     程式碼比想像中的簡單
     原本自己試了很多方法
     就跟正確方法差一些
字典兩各字 還真難理解

TOP

本帖最後由 GBKEE 於 2011-4-26 16:22 編輯

回復 3# freeffly
1樓提問 :有專門給該工作表使用的定義名稱,有什麼方式可以一次刪除這些專門指定工作表的定義名稱嗎?
2樓的程式會刪掉活頁簿中所有的定義名稱
提供只刪該工作表的定義名稱
  1. Sub Macro1() '定義名稱為該工作表專用的名稱
  2.     Sheet1.Names.Add Name:="ABC", RefersToR1C1:="=R5C2:R13C2"
  3. End Sub

  4. Sub Ex()
  5. For Each E In Sheet1.Names '刪除Sheet1該工作表的名稱
  6. E.Delete
  7. Next
  8. End Sub
複製代碼

TOP

回復 4# GBKEE


  大大果然眼尖   我也有發現 所以我改成我要的方式
  我的方法如下

    Sub 刪除名稱()
    For i = 4 To Sheets.Count
    Sheets(i).Visible = True
    Sheets(i).Select
    For Each c In ActiveSheet.Names
     c.Delete
   Next
    Sheets(i).Visible = False
    Next
End Sub
字典兩各字 還真難理解

TOP

回復 5# freeffly
簡化一下
  1. Sub 刪除名稱()
  2.     For I = 4 To Sheets.Count
  3.         For Each c In Sheets(I).Names
  4.             c.Delete
  5.         Next
  6.     Next
  7. End Sub
複製代碼

TOP

回復 6# GBKEE


    感謝大大幫忙簡化
     我以為指定工作表要讓他顯示才能作業
      沒想到還可以這樣做
字典兩各字 還真難理解

TOP

在每個工作表上循環,刪除每個表的定義名稱
跟一次刪除活頁簿內已定義的名稱
差別在哪裡?

TOP

回復 8# chin15
這就要請教樓主的需求是什麼

TOP

回復 8# chin15


    我主要是要刪除某些工作表的定義名稱
    可能是第4各工作表以後的
     因為前面幾各工作表的名稱還要保留
     各位都提供了我學習的地方
      謝謝喔
字典兩各字 還真難理解

TOP

        靜思自在 : 天上最美是星星,人生最美是溫情。
返回列表 上一主題