Làm sao để cập nhập ngày tự động

Liên hệ QC

nguyenvanlinhab

Thành viên mới
Tham gia
27/2/22
Bài viết
40
Được thích
0
Nhờ mọi người giúp đỡ .Chi tiết như file ạ
 

File đính kèm

  • HOC.xlsx
    27.6 KB · Đọc: 16
Bạn thử xem có đúng ý không.
Em cảm ơn ạ bài này không dùng hàm thời gian được đúng không ạ
Bài đã được tự động gộp:

Lẽ ra bạn phải đầu tư cho câu hỏi 1 chút: viết rõ ra trên bài đăng chứ ai lại "Chi tiết như file ạ" thế!
Cảm ơn thầy đã góp ý .Em không biết diễn đạt sao cho đúng ạ.
 
Upvote 0
Em thử thêm dữ liệu ở 2 cột A và B thì ở cột C không cập nhập ngày ạ.Nếu nhập từng cột thì code mới chạy và khi patse giá trị nó cũng không chạy
Thử thay bằng code ở sau.

Nhập A hoặc B thì gán ngày hiện hành. Nếu xóa cả A và B trống thì xóa ngày đã gán.

Có thể nhập hàng loạt hoặc xóa hàng loạt trong 1 nốt nhạc.
Mã:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim r As Long, rng As Range, cell_ As Range
    Set rng = Intersect(Target, Me.Range("A2:B10000"))
    If rng Is Nothing Then Exit Sub
    Application.EnableEvents = False
    For r = rng.Row To rng.Row - 1 + rng.Rows.Count
        Set cell_ = Me.Range("A" & r)
        If Len(cell_.Value & cell_.Offset(0, 1).Value) Then
            cell_.Offset(0, 2).Value = Date
        Else
            cell_.Offset(0, 2).Value = Empty
        End If
    Next r
    Application.EnableEvents = True
End Sub
 
Upvote 0
Em thử thêm dữ liệu ở 2 cột A và B thì ở cột C không cập nhập ngày ạ.Nếu nhập từng cột thì code mới chạy và khi patse giá trị nó cũng không chạy
Bạn thử code này xem sao.
Mã:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng As Range, i As Long
Set rng = Target

    i = Split(Split(rng.Address, ":")(0), "$")(2)
    
    If Target.Rows.Count < 10 ^ 6 Then
        If Not Intersect(Target, Range("A1:B1000")) Is Nothing Then
            If Len(Sheet5.Range("A" & i).Value) = 0 And Len(Sheet5.Range("B" & i).Value) = 0 Then
                Sheet5.Range("C" & i & ":C" & i + rng.Rows.Count - 1).Value = ""
            Else
                Sheet5.Range("C" & i & ":C" & i + rng.Rows.Count - 1).Value = Date
            End If
        End If
    End If
    
End Sub
Thử thay bằng code ở sau.
Hay thật anh ơi. Em thử làm bài này mà mò mãi mới làm được.
 
Upvote 0
Web KT

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

Back
Top Bottom