- 帖子
- 2035
- 主題
- 24
- 精華
- 0
- 積分
- 2031
- 點名
- 0
- 作業系統
- Win7
- 軟體版本
- Office2010
- 閱讀權限
- 100
- 性別
- 男
- 註冊時間
- 2012-3-22
- 最後登錄
- 2024-2-1
|
78#
發表於 2016-9-8 19:58
| 只看該作者
本帖最後由 c_c_lai 於 2016-9-8 19:59 編輯
回復 76# v03586
找到原因了。- Sub Main() ' 使用 Main 程式前, 需先指定 『xDay』 的日期
- Dim e As Variant, Rng As Range, cts As Integer ' , loc As String
-
- Set 回報班別 = CreateObject("SCRIPTING.DICTIONARY")
- Set 人員回報 = CreateObject("SCRIPTING.DICTIONARY")
-
- 人力資料讀取
- Main_回報清除
-
-
- For cts = 1 To 2 ' 第一階段(cts=1)以正常班別為判斷基準;第二階段(2)則純以加班班別為判斷基準。
- Main_回報資料 (cts) ' 2016/09/01 Modied by C. C. Lai
-
- If 回報班別.Count = 0 Then
- Msg = True
- MsgBox Format(xDay, "YYYY月MM份 !") & " 沒有出勤人員"
- Exit Sub
- End If
複製代碼 在第二階段,有可能全無 "延長加班", 故應隨即跳離本執行中模組。
修正為:- Sub Main() ' 使用 Main 程式前, 需先指定 『xDay』 的日期
- Dim e As Variant, Rng As Range, cts As Integer ' , loc As String
-
- Set 回報班別 = CreateObject("SCRIPTING.DICTIONARY")
- Set 人員回報 = CreateObject("SCRIPTING.DICTIONARY")
-
- 人力資料讀取
- Main_回報清除
-
-
- For cts = 1 To 2 ' 第一階段(cts=1)以正常班別為判斷基準;第二階段(2)則純以加班班別為判斷基準。
- Main_回報資料 (cts) ' 2016/09/01 Modied by C. C. Lai
-
- If 回報班別.Count = 0 Then
- Msg = True
- [color=Red]If cts = 1 Then[/color]
- MsgBox Format(xDay, "YYYY月MM份 !") & " 沒有出勤人員"
- [color=Red]ElseIf cts = 2 Then[/color] ' 在第二階段,有可能全無 "延長加班", 故隨即跳離本執行中模組。
- [color=Red]Msg = False
- End If[/color]
- Exit Sub
- End If
複製代碼 |
|