軟體:Office Excel
版本:2010
標題有點難懂,請直接看檔案:https://goo.gl/No20Py (dropbox連結)
巨集內容如下:
Sub AryTest()
Dim ShtAry As Variant
ShtAry = Array(工作表1, 工作表3) '將工作表設成陣列
MsgBox TypeName(ShtAry(0)) '先傳回陣列第一個值的資料型態 = Worksheet
With ShtAry(0) '經過 with 之後
MsgBox TypeName(ShtAry(0)) '傳回陣列第一個值的資料型態 = Empty
.Cells(1, 1) = "Yes" '但是仍可以繼續使用With的物件
End With
With ShtAry(0) '第二次 with
MsgBox TypeName(ShtAry(0))
.Cells(1, 1) = "Yes*2" '已無法使用該物件
End With
End Sub
上述狀況透過區域變數的監看視窗,確實發現一旦使用了 with 之後,
該陣列內的資料型態就會從 Worksheet 變成 Empty...
請問各位高手,這是什麼原因呢?謝謝!!
--
┌─────────────────────────────┐
│就這樣,終於到了啟程的日子。 │
│和來機場送行的朋友們說著玩笑話,其實內心恍恍惚惚像在作夢。│
│也似乎是因為,為了走到「出發」這一步,耗盡了全部心力。 │
└─────────────────石田裕輔《不去會死!》─┘
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.231.202.252
※ 文章網址: https://www.ptt.cc/bbs/Office/M.1471872006.A.CED.html