CHẤM CÔNG BẰNG DẤU"X" TỪ SỐ NGÀY CHO TRƯỚC, TRỪ CHỦ NHẬT BẰNG VBA

Liên hệ QC
Tôi tuân thủ nội quy khi đăng bài

Ngoc Anh634397

Thành viên mới
Tham gia
22/10/23
Bài viết
2
Được thích
0
Nhờ các cao nhân giúp em bảng chấm công này có số ngày tính theo doanh thu, giờ phải dựa trên số ngày cột tổng ngày công thực tế để đánh dấu x từ ngày 26 tháng này - 25 tháng sau. Trừ những ngày chủ nhật ra. Để làm được bằng VBA thì làm thế nào ạ?
Xin các anh/chị giúp đỡ e với ạ.
 

File đính kèm

Bạn đang làm ngược à?
Nhân loại: Đếm số lượng "x" ra số ngày công
Bạn: Cho số ngày công, điền "x"
Nếu đủ công thì đơn giản là điền "x" cho tất cả các ngày, nếu không đủ công (VD: dòng 20, số công là 3 ngày) thì biết điền "x" vào ngày nào, từ mùng 1 đến 31?
 
Bạn đang làm ngược à?
Nhân loại: Đếm số lượng "x" ra số ngày công
Bạn: Cho số ngày công, điền "x"
Nếu đủ công thì đơn giản là điền "x" cho tất cả các ngày, nếu không đủ công (VD: dòng 20, số công là 3 ngày) thì biết điền "x" vào ngày nào, từ mùng 1 đến 31?
Dạ này chỉ cần đánh từ ngày đầu trở đi, miễn sao đủ dấu "x" đúng số ngày được chấm thôi ạ. Chứ ko quan trọng là đánh vào ô nào.
Do nếu nhiều NV thì phải dò từng số để đánh dấu x, trừ ngày chủ nhật nên e tính nhờ có cách nào làm VBA cho nhanh ko ạ?
 
; ;
 
Lần chỉnh sửa cuối:
Dùng tạm code này nhé bạn:

Mã:
Option Explicit
Sub chamcong()
Dim lr&, i&, j&, count&, rng, res()
lr = Cells(Rows.count, "F").End(xlUp).Row
rng = Range("I10:AP" & lr).Value
ReDim res(1 To UBound(rng) - 3, 1 To UBound(rng, 2) - 3)
Range("K13:AO1000").ClearContents
For i = 4 To UBound(rng)
    count = rng(i, UBound(rng, 2))
    If count > 0 Then
        For j = 3 To UBound(rng, 2) - 1
            If rng(2, j) <> "CN" And rng(1, j) >= rng(i, 1) Then
                If count > 0 Then
                    count = count - 1
                    res(i - 3, j - 2) = "x"
                End If
            End If
        Next
    End If
Next
Range("K13").Resize(UBound(res), UBound(res, 2)).Value = res
End Sub
 

File đính kèm

Dạ này chỉ cần đánh từ ngày đầu trở đi, miễn sao đủ dấu "x" đúng số ngày được chấm thôi ạ. Chứ ko quan trọng là đánh vào ô nào.
. . . . .
Đây thường là BCC (bảng chấm công) đối phó; Tuy nhiên ta có thể không nhất thiết phải chấm công cho 1 người nào đó bất kỳ từ đầu tháng; mà có thể vài người so le được chấm bắt đầu từ cuối tháng!
Thậm chí người nào đó nữa số công trong tháng ta có thể chấm trong BCC bắt đầu từ ngày 1 hay 6 ,. . . của tháng!
. . . . . . .
 
Web KT

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

Back
Top Bottom