Hàm fill ngày tự động (2 người xem)

Liên hệ QC

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

hanam1601

Thành viên mới
Tham gia
3/7/07
Bài viết
16
Được thích
1
Dear các bạn
Mình có file excel đính kèm , tại cột B3 và tại cột C3 mình gõ ngày mình cân điều kiện là cách nhau đúng 1 tháng ( ví dụ 24/09 tại B3 thì tại C3 fai là 24/10) . Khi nhập dữ liệu xong mình muốn nó fill tự động xuống các dòng tiếp theo các ngày tháng tiếp theo thì làm như thế nào ( tại cột B4 sẽ lấy dữ liệu của C3 và C4 sẽ nhảy theo đúng chu kỳ 1 tháng ) . Và mình gõ chu kỳ là bao nhieu thì nó sẽ fill tự đồng ngày bấy nhiêu dòng là dừng . Cái này mình muốn làm file tính lãi Ngân hàng hàng tháng nhờ các bạn chỉ giúp
cảm ơn các bạn nhiều
 

File đính kèm

Dear các bạn
Mình có file excel đính kèm , tại cột B3 và tại cột C3 mình gõ ngày mình cân điều kiện là cách nhau đúng 1 tháng ( ví dụ 24/09 tại B3 thì tại C3 fai là 24/10) . Khi nhập dữ liệu xong mình muốn nó fill tự động xuống các dòng tiếp theo các ngày tháng tiếp theo thì làm như thế nào ( tại cột B4 sẽ lấy dữ liệu của C3 và C4 sẽ nhảy theo đúng chu kỳ 1 tháng ) . Và mình gõ chu kỳ là bao nhieu thì nó sẽ fill tự đồng ngày bấy nhiêu dòng là dừng . Cái này mình muốn làm file tính lãi Ngân hàng hàng tháng nhờ các bạn chỉ giúp
cảm ơn các bạn nhiều

Có 1 cách khác cho bạn tham khảo, là dùng Code dưới đây:
PHP:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Intersect(Target, Range("B3:B100")) Is Nothing Then Exit Sub
    If IsDate(Target) Then
        Application.EnableEvents = False
        Target.Offset(, 1) = DateSerial(Year(Target), Month(Target) + 1, Day(Target))
        Application.EnableEvents = True
    End If
End Sub
 
Lần chỉnh sửa cuối:
Có 1 cách khác cho bạn tham khảo, là dùng Code dưới đây:
PHP:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Intersect(Target, Range("B3:B100")) Is Nothing Then Exit Sub
    If IsDate(Target) Then
        Application.EnableEvents = False
        Target.Offset(, 1) = DateSerial(Year(Target), Month(Target) + 1, Day(Target))
        Application.EnableEvents = True
    End If
End Sub

- Gửi File để bạn tham khảo
Cảm ơn bạn cách của bạn nó chỉ fill qua cột C3 thôi mình muốn nó fill tự động các dòng tiếp theo luôn
 
Cảm ơn bạn cách của bạn nó chỉ fill qua cột C3 thôi mình muốn nó fill tự động các dòng tiếp theo luôn
Khi bạn nhập ngày tháng năm bất kỳ vào cột B, thì số tháng bên cột C sẽ tăng thêm 1 so với bên B.
Tôi đã làm theo đúng yêu cầu của bạn còn gì !
 
Thử nhập B3 = 31/1/2015 xem C3 tăng bao nhiêu nha.

Đương nhiên là nó không thể trả về giá trị 31/02/2015 rồi phải không bạn?
Vì tháng 2 chỉ có 28 hoặc 29 ngày thôi, nên khi cộng thêm 1 tháng nữa <==> 30 hay 31 ngày, vì vậy mới có con số 03/03/2015
Có điều là Code trên chỉ đúng cho các tháng có số ngày <31 & không phải là tháng 2.
Rất cảm ơn bạn đã góp ý!
 
Thử nhập B3 = 31/1/2015 xem C3 tăng bao nhiêu nha.
Bạn kiểm tra lại giúp mình xem đã ổn chưa nhé, với Code dưới đây:
PHP:
Sub Them1Thang()
    Dim ws As Worksheet
    Dim lRow As Long, i As Long
    Set ws = ThisWorkbook.Sheets(1)
    With ws
        lRow = .Range("b" & .Rows.Count).End(xlUp).Row
        For i = 3 To lRow
            .Range("c" & i).Value = DateAdd("m", 1, .Range("b" & i).Value)
        Next i
    End With
End Sub
 
Lần chỉnh sửa cuối:
Bạn kiểm tra lại giúp mình xem đã ổn chưa nhé, với Code dưới đây:
PHP:
Sub Them1Thang()
    Dim ws As Worksheet
    Dim lRow As Long, i As Long
    Set ws = ThisWorkbook.Sheets(1)
    With ws
        lRow = .Range("b" & .Rows.Count).End(xlUp).Row
        For i = 3 To lRow
            .Range("c" & i).Value = DateAdd("m", 1, .Range("b" & i).Value)
        Next i
    End With
End Sub
hàm DateAdd("m", 1, sart_date) cũng giống Edate trong bảng tính
 
Lần chỉnh sửa cuối:
Cảm ơn bạn cách của bạn nó chỉ fill qua cột C3 thôi mình muốn nó fill tự động các dòng tiếp theo luôn

Bạn tham khảo Code bài #10 nhé, hy vọng giúp được bạn.
Bây giờ bạn chỉ cần nhập thời gian vào cột B và bấm nút, kết quả cột C, bạn hãy kiểm tra lại.
 
Web KT

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

Back
Top Bottom