[算表] Excel VBA 處理工作表的3種名稱

作者: Lanjaja   2021-03-21 15:59:49
軟體:Excel
版本:Office 2013
大家好,我想請問一個困擾我很久的問題。
我先把活頁簿v的worksheets(14),名稱A,複製到活頁簿u的worksheets(2)
v.Worksheets(14).Copy before:=u.Worksheets(2)
但是當我進入活頁簿u時,
VBA視窗顯示那個被複製上去的目標工作表名稱依然是工作表14(A),
我點選那個工作表看左下方它的屬性
(Name) 是 工作表14
Name 是 A
但其實它是worksheets(2),可是我在屬性區塊都沒有看到任何跟2有關的資訊
所以現在這個工作表有3種不同的名字!?
我有以下幾個問題想請先進指導一下:
1.
worksheets(2).name = A
worksheets(2).??? = 工作表14
我應該要在???打什麼才能用msgbox顯示出工作表14?
2.能否在VBA以"工作表14"的這個名稱叫出這個工作表?
worksheets("A"), worksheets(2)都是相同的東西
但是worksheets("工作表14")或是worksheets(14)都發生錯誤的訊息
所以我想知道要怎麼用工作表14來稱呼
謝謝各位先進的指導~
2.在要屬性區域的哪個地方查到工作表真正的index編號?
作者: soyoso (我是耀宗)   2021-03-21 17:35:00
(Name)是工作表14,以msgbox顯示出工作表141.msgbox worksheets(2).codename2.就是直接用工作表14,如要寫入"abc"字串到工作表14的儲存格a1,就以 工作表14.range("a1") = "abc"3.如何查到index編號,worksheets("A").index或工作表14.index就是
作者: Lanjaja   2021-03-21 18:34:00
謝謝您的解答,第一次聽到codename,想請問s大codename可以改掉嗎?謝謝
作者: soyoso (我是耀宗)   2021-03-21 18:53:00
...vbcomponents(codename).name = ..的方式
作者: Lanjaja   2021-03-23 02:18:00
了解,謝謝s大,我試試看
作者: a24626296 (DD)   2021-03-23 15:25:00
給他有點小複雜

Links booklink

Contact Us: admin [ a t ] ucptt.com