bảng chấm công bằng excel (1 người xem)

Người dùng đang xem chủ đề này

Lê Duy Thương

Cạo lấy gì gội (Dịch quá không gội được)
Tham gia
14/10/09
Bài viết
3,116
Được thích
4,854
Ngồi rảnh đem bảng công cũ ra vọc . up lên đây xem có anh em nào cần.
có hướng dẫn cụ thể trong file. nếu thắc mắc gì xin hỏi tại đây.
 

File đính kèm

Theo mình thì mã số nhân viên nên có độ dài bằng nhau
Nếu là chuỗi thì nên là LDT00,. . . .
Nếu là số thì nên bắt đầu là: 10001

Chúc vui vẻ!
 
e cũng có bài tập phải lập bảng chấm công.e muốn hỏi anh là thế nào để đếm được khoảng.ví dụ trong ngày theo từng
giai đoạn.0h-5h,9h-12h.17h-20h.anh có cách nào giúp e đếm được khoảng làm việc( như ví dụ trên là 3 khoảng).e gửi kèm thêm file minh họa.Nếu phai dùng VBA anh hướng dẫn e đoạn code dk ko ạ.thank a
 

File đính kèm

[Thongbao]e có bài tập phải lập bảng chấm công. E muốn hỏi anh là thế nào để đếm được khoảng.ví dụ trong ngày theo từng
giai đoạn.0h-5h,9h-12h.17h-20h.anh có cách nào giúp e đếm được khoảng làm việc( như ví dụ trên là 3 khoảng).e gửi kèm thêm file minh họa.Nếu phai dùng VBA anh hướng dẫn e đoạn code dk ko ạ.thank a[/Thongbao]

Bạn xem & kiểm theo hàm người dùng trong file
 

File đính kèm

[Thongbao]e có bài tập phải lập bảng chấm công. E muốn hỏi anh là thế nào để đếm được khoảng.ví dụ trong ngày theo từng
giai đoạn.0h-5h,9h-12h.17h-20h.anh có cách nào giúp e đếm được khoảng làm việc( như ví dụ trên là 3 khoảng).e gửi kèm thêm file minh họa.Nếu phai dùng VBA anh hướng dẫn e đoạn code dk ko ạ.thank a[/Thongbao]

Bạn xem & kiểm theo hàm người dùng trong file

Em cảm ơn anh.đúng cái e cần đây rồi ạ.thế anh cho e hỏi thêm một tí ạ.Bây giờ lại cần thêm điều kiện là : Số giờ làm được chia tối đa thành hai giai đoạn,một trong hai giai đoạn phải kéo dài ít nhất 6h,khoảng cách giữa hai giai đoạn làm liên tiếp không được quá 14h( nghĩa là các giờ nghỉ giữa hai giai đoạn làm việc không được vượt quá 14h).Em cam ơn
 
[Thongbao]Em cam ơn[/Thongbao]
[*] 'Thêm' hay là tính cách khác?; Khi chỉ chia làm 2 giai đoạn là tối đa thì có vẻ như là 'Tính cách khác' rồi.

[**] Tốt nhất bạn đưa file khác hay trang tính khác bổ sung đi; Có như vậy khỏi mất thời gian của bạn & người khác.

(húc vui!
 
Chỉnh sửa lần cuối bởi điều hành viên:
[Thongbao]Thế cho E hỏi thêm một tí ạ. Bây giờ (*)lại cần thêm điều kiện là : Số giờ làm được chia tối đa thành hai giai đoạn,một trong hai giai đoạn phải kéo dài ít nhất 6h,khoảng cách giữa hai giai đoạn làm liên tiếp không được quá 14h( nghĩa là các giờ nghỉ giữa hai giai đoạn làm việc không được vượt quá 14h).Em cam ơn[/Thongbao]
[*] 'Thêm' hay là tính cách khác?; Khi chỉ chia làm 2 giai đoạn là tối đa thì có vẻ như là 'Tính cách khác' rồi.

[**] Tốt nhất bạn đưa file khác hay trang tính khác bổ sung đi; Có như vậy khỏi mất thời gian của bạn & người khác.

(húc vui!

Dạ.Vẫ tính trong trang đấy.Mô tả cụ thể e gửi kèm ví dụ dươi này đây ạ
 

File đính kèm

[thongbao]Mô tả cụ thể e gửi kèm ví dụ dươi này đây ạ[/thongbao]
 

File đính kèm

Dạ đúng cái này ui ạ.nhưng e thấy có chút trục trặc nhỏ.anh giúp e với ạ.Mô tả e gửi kèm ví dụ.Thank a
 

File đính kèm

. . . Nhưng e thấy có chút trục trặc nhỏ.anh giúp e với ạ.
Đúng là còn thiếu; Bạn chép cái này đề lên toàn bộ hàm cũ là được
PHP:
Option Explicit
Function CountMax(Rng As Range, Optional Tri As String = "") As Byte
 Dim Tmp As Byte:                                   Dim Cls As Range
 If Tri = "x" Then Tri = "X"
 For Each Cls In Rng
    If UCase$(Cls.Value) = Tri Then
        Tmp = Tmp + 1
    End If
    If UCase$(Cls.Value) <> Tri Then
        If CountMax < Tmp Then CountMax = Tmp
        Tmp = 0
    End If
 Next Cls
 If Tmp > CountMax Then CountMax = Tmp  '<=|'
End Function
 
Đúng là còn thiếu; Bạn chép cái này đề lên toàn bộ hàm cũ là được
PHP:
Option Explicit
Function CountMax(Rng As Range, Optional Tri As String = "") As Byte
 Dim Tmp As Byte:                                   Dim Cls As Range
 If Tri = "x" Then Tri = "X"
 For Each Cls In Rng
    If UCase$(Cls.Value) = Tri Then
        Tmp = Tmp + 1
    End If
    If UCase$(Cls.Value) <> Tri Then
        If CountMax < Tmp Then CountMax = Tmp
        Tmp = 0
    End If
 Next Cls
 If Tmp > CountMax Then CountMax = Tmp  '<=|'
End Function
Dạ đúng code e cần ui.cảm ơn anh rất nhiều.chúc anh luôn mạnh khỏe và thành công trong cuộc sống
 
Bạn thêm 1 cột trống vô trước cột [AX]; Sau đó sửa công thức tại [AY] lúc đó lại như sau:
=DemGD(B2:AX2)

 
anh Lê Duy Thương cho e hỏi với, e sắp thi tuyển vào công ty may, a có thể cho e biết cách lập dk bảng lương ngày này k ạ. e xin cảm ơn, đây là bảng lương ngày của cty đó a.rất mog a có thể trả lời e sớm
 

File đính kèm

  • 11911661_905333029539370_1696520799_n.jpg
    11911661_905333029539370_1696520799_n.jpg
    80.9 KB · Đọc: 30

Bài viết mới nhất

Back
Top Bottom