- 帖子
- 5923
- 主題
- 13
- 精華
- 1
- 積分
- 5986
- 點名
- 0
- 作業系統
- win10
- 軟體版本
- Office 2010
- 閱讀權限
- 150
- 性別
- 男
- 來自
- 台灣基隆
- 註冊時間
- 2010-5-1
- 最後登錄
- 2022-1-23
        
|
7#
發表於 2015-9-25 15:22
| 只看該作者
回復 6# lichang - Private Sub MultiPage1_Change()
- If MultiPage1.Value = 1 Then
- Image_ZOrder '將程式控制權轉移 這 [Image_ZOrder]程序,
- '須等這程式執行完畢,程式控制權才會回到這裡
- '繼續 End If 下面的程式碼
- 'Image_ZOrder 執行期間, MultiPage1_Change的程式不會執行的
- '所以異動兩次後才會回復
- Else
- '''程式碼
- End If
- '''End If後的程式碼
- '''End If後的程式碼
- End Sub
複製代碼 試試看- Dim Msg As Boolean, Form_Msg As Boolean
- Private Sub MultiPage1_Change()
- If MultiPage1.Value = 1 Then
- Msg = True
- Else
- Msg = False
- End If
- End Sub
- Private Sub UserForm_Activate()
- Do While Form_Msg = False
- DoEvents
- If Msg = True And MultiPage1.Value = 1 Then
- Image_ZOrder
- End If
- Loop
- End Sub
- Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
- Form_Msg = True
- End Sub
- Private Sub Image_ZOrder()
- Dim Ar(), i As Integer, j As Integer, t As Date
- Ar = Array(Image1, Image2, Image3)
- t = Time
- Do While Msg = True And MultiPage1.Value = 1 '執行這 Do Loop 的迴圈
- DoEvents
- 'Sleep 1000
- If t + #12:00:01 AM# <= Time Then '每秒一次,也可以不用 Sleep
- Ar(i).ZOrder msoBringToFront
- i = i + 1
- If i > UBound(Ar) Then i = 0
- t = Time
- End If
- Loop
- End Sub
複製代碼 |
|