我創建了這個函式來瀏覽我當前的作業表并洗掉所有以“Stn_”開頭的形狀。它似乎一次只洗掉幾個。我必須多次運行它才能將它們全部洗掉。我不確定為什么它不能正常作業......
Private Sub btnReset_click()
'Reset Shapes needs work
For Each shp In ActivePage.Shapes
Debug.Print shp.Name
If shp.Name Like "Stn_*" Then
ActiveWindow.Select shp, visSelect
ActiveWindow.Selection.Delete
End If
Next
結束子
有人會對它為什么這樣做有任何指示或解釋嗎?
非常感激。
uj5u.com熱心網友回復:
洗掉形狀時需要倒數。如果你,比如說,洗掉形狀 1,那么形狀 2 就會變成新的形狀 1,但回圈計數器會移動到 2,繞過那個形狀。所以你不能使用 For Each,你必須使用一個普通的舊 For 但按 -1 計數。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/482199.html