返回列表 上一主題 發帖

請教打卡統計問題

您好:
我也一直覺得很奇怪,為何早退不行?

附檔如下 :
測試.rar (11.97 KB)

TOP

回復 7# tony0318
你的早退的字串是怎樣寫的  再附檔看看

TOP

嘗試過多次,
遲到部分是累計了,
但早退出不來,
還有特休會變成480480,

以下是我的程式代碼,不知道錯誤在哪?謝謝。
  1. Sub Ex()
  2.     Dim Ar(), a, i As Integer
  3.     With Sheets("sheet1")
  4.         Ar = Application.Transpose(.Range("g2", .Range("g2").End(xlDown)))
  5.         .[f34] = UBound(Filter(Ar, .[e34], True)) + 1

  6.         For Each a In Filter(Ar, .[e35], True)
  7.             i = i + Mid(a, InStr(a, "到") + 1, InStr(a, "分") - InStr(a, "到") - 1)
  8.         Next
  9.         .[f35] = i

  10.         For Each a In Filter(Ar, .[e37], True)
  11.             k = k + Mid(a, InStr(a, "休") + 1, InStr(a, "分") - InStr(a, "休") - 1)
  12.         Next
  13.         .[f37] = k
  14.                
  15.         For Each a In Filter(Ar, .[e36], True)
  16.             j = j + Mid(a, InStr(a, "退") + 1, InStr(a, "分") - InStr(a, "退") - 1)
  17.         Next
  18.         .[f36] = j
  19.         
  20.     End With
  21. End Sub
複製代碼

TOP

回復 5# tony0318
你對程式不是很懂,可以練習看看
For Each a In Filter(Ar, .[e37], True)
            i = i + Mid(a, InStr(a, "休") + 1, InStr(a, "分") - InStr(a, "休") - 1)
Next
i=累計特休的分鐘  ,InStr(a, "休")=找出"休"位於字串的位置數  
F35和F36 要呈現的是分鐘的累計,而非次數,你試著改出來,不會很難的

TOP

Hsieh 您好 :

對程式不是很懂,但GBKEE 的 程式應該是可行的,因為有看到特休部分是可以累加的並且換算成小時。
而遲到和早退,除要有計算次數還要有遲到累計分鐘數、早退分鐘數。

謝謝。

TOP

回復 3# tony0318

這個問題點在於上、下班的遲到早退標準為何?
參考一下這個討論
http://forum.twbts.com/thread-3811-4-2.html
學海無涯_不恥下問

TOP

非常感謝您的幫忙!
可能我寫的不清楚!
F35和F36 要呈現的是分鐘的累計,而非次數,
請您再次幫忙,謝謝。

TOP

回復 1# tony0318

試試看
  1. Sub Ex()
  2.     Dim Ar(), a, i  As Integer
  3.     With Sheets("sheet1")
  4.         Ar = Application.Transpose(.Range("g2", .Range("g2").End(xlDown)))
  5.         .[f34] = UBound(Filter(Ar, .[e34], True)) + 1  
  6.         .[f35] = UBound(Filter(Ar, .[e35], True)) + 1
  7.         .[f36] = UBound(Filter(Ar, .[e36], True)) + 1
  8.         For Each a In Filter(Ar, .[e37], True)
  9.             i = i + Mid(a, InStr(a, "休") + 1, InStr(a, "分") - InStr(a, "休") - 1)
  10.         Next
  11.         .[f37] = i / 60
  12.     End With
  13. End Sub
複製代碼

TOP

        靜思自在 : 成功是優點的發揮,失敗是缺點的累積。
返回列表 上一主題