- 帖子
- 5923
- 主題
- 13
- 精華
- 1
- 積分
- 5986
- 點名
- 0
- 作業系統
- win10
- 軟體版本
- Office 2010
- 閱讀權限
- 150
- 性別
- 男
- 來自
- 台灣基隆
- 註冊時間
- 2010-5-1
- 最後登錄
- 2022-1-23
        
|
回復 7# tony0318
還有特休會變成480480, 你沒宣告變數為數字時 J , K 傳回子串+ 子串才如此- Sub Ex()
- Dim Ar(), a, i As Integer, k As Integer, j As Integer
- With Sheets("sheet1")
- Ar = Application.Transpose(.Range("g2", .Range("g2").End(xlDown)))
- .[F34] = UBound(Filter(Ar, .[e34], True)) + 1
- For Each a In Filter(Ar, .[e35], True)
- i = i + Mid(a, InStr(a, "到") + 1, InStr(a, "分") - InStr(a, "到") - 1)
- Next
- .[f35] = i
- For Each a In Filter(Ar, .[e37], True)
- k = k + Mid(a, InStr(a, "休") + 1, InStr(a, "分") - InStr(a, "休") - 1)
- Next
- .[f37] = k / 60
- For Each a In Filter(Ar, .[e36], True)
- j = j + Mid(a, InStr(a, "退") + 1, Len(a) - InStrRev(a, "分") + 1)
- Next
- .[f36] = j
- End With
- End Sub
複製代碼 |
|