Tự động chèn dòng và điền nội dung vào ô theo từ khóa

Liên hệ QC
Chuột phải vào sheet tab "Toi_TuKhoa", chọn view code, dán đoạn code dưới đây vào --> nhấn alt+Q
Thử thay đổi bên sheet toi_tukhoa các cột E, F, I để kiểm tra
Mã:
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 6 Then
    Dim tukhoa0
    Dim mcv0, mcv1
    Dim rws, i
    tukhoa0 = Target.Offset(, -3)
    mcv0 = Target.Offset(, -4).Value
    mcv1 = Target.Offset(, -1).Value
    With Sheets("Danh muc NT cong viec")
        rws = .Range("D" & Rows.Count).End(xlUp).Row
        For i = rws To 9 Step -1
            If .Range("D" & i).Value = mcv1 And .Range("D" & i + 1).Value = mcv0 Then
                If Target.Value = "" Then
                    .Range("D" & i).EntireRow.Delete
                Else
                    .Range("G" & i).Value = Replace(.Range("G" & i + 1).Value, tukhoa0, Target.Value)
                End If
                Exit For
            End If
        Next i
    End With
End If

If Target.Column = 9 Then
    tukhoa0 = Target.Offset(, -6)
    mcv0 = Target.Offset(, -7).Value
    mcv1 = Target.Offset(, -4).Value
    With Sheets("Danh muc NT cong viec")
        rws = .Range("D" & Rows.Count).End(xlUp).Row
        For i = rws To 9 Step -1
            If .Range("D" & i).Value = mcv1 And .Range("D" & i + 1).Value = mcv0 Then
                .Range("H" & i + 2).Value = Replace(.Range("G" & i + 1).Value, tukhoa0, Target.Value)
                Exit For
            End If
        Next i
    End With
End If

If Target.Column = 5 Then
    mcv0 = Target.Offset(, -3).Value
    With Sheets("Danh muc NT cong viec")
        rws = .Range("D" & Rows.Count).End(xlUp).Row
        For i = rws To 9 Step -1
            If .Range("D" & i).Value = mcv0 And .Range("A" & i).Value = .Range("A" & i - 1).Value Then
                .Range("D" & i - 1).Value = Target.Value
                Exit For
            End If
        Next i
    End With
End If
End Sub
Vâng.
1/ Khi xóa nội dung trong cột F của Sheet (Toi_TuKhoa) thì dòng bên Sheet (Danh muc NT cong viec) đã được xóa đi, nhưng khi chạy lại code "A_Chenthem" thì dòng vẫn được chèn mặc dù nội dung tương ứng với mã CV trong cột F và cột I trống (Xin được anh/chị giúp để nếu nội dung trong cột F và I của Sheet (Toi_TuKhoa) là trống <có thể ban đầu trống hoặc trống vì bị xóa đi bằng tay sau khi chạy code "A_Chenthem" > thì dòng không được chèn khi chạy lại code "A_Chenthem".
2/ Khi xóa nội dung trong cột I của Sheet (Toi_TuKhoa) thì nội dung được điền trong cột H của sheet (Danh muc NT cong viec) không xóa hết đi <Như hình đăng> mà chỉ xóa được những từ khóa (anh/chị giúp em xóa hết cả nội dung trong ô của cột H được điền khi xóa nội dung trong cột I của Sheet (Toi_TuKhoa) và khi chạy lại code "A_Chenthem" nếu dữ liệu cột I trong sheet (Toi_TuKhoa) mà trống <có thể ban đầu trống hoặc trống vì bị xóa đi bằng tay sau khi chạy code "A_Chenthem" > thì nội dung trong ô H là không có.
Em cảm ơn!

vvvvv.png
 

File đính kèm

  • File ban dau .xlsm
    63.9 KB · Đọc: 3
Lần chỉnh sửa cuối:
Vâng.
1/ Khi xóa nội dung trong cột F của Sheet (Toi_TuKhoa) thì dòng bên Sheet (Danh muc NT cong viec) đã được xóa đi, nhưng khi chạy lại code "A_Chenthem" thì dòng vẫn được chèn mặc dù nội dung tương ứng với mã CV trong cột F và cột I trống (Xin được anh/chị giúp để nếu nội dung trong cột F và I của Sheet (Toi_TuKhoa) là trống <có thể ban đầu trống hoặc trống vì bị xóa đi bằng tay sau khi chạy code "A_Chenthem" > thì dòng không được chèn khi chạy lại code "A_Chenthem".
2/ Khi xóa nội dung trong cột I của Sheet (Toi_TuKhoa) thì nội dung được điền trong cột H của sheet (Danh muc NT cong viec) không xóa hết đi <Như hình đăng> mà chỉ xóa được những từ khóa (anh/chị giúp em xóa hết cả nội dung trong ô của cột H được điền khi xóa nội dung trong cột I của Sheet (Toi_TuKhoa) và khi chạy lại code "A_Chenthem" nếu dữ liệu cột I trong sheet (Toi_TuKhoa) mà trống <có thể ban đầu trống hoặc trống vì bị xóa đi bằng tay sau khi chạy code "A_Chenthem" > thì nội dung trong ô H là không có.
Em cảm ơn!

View attachment 242413
Bạn xem file đính kèm.
Trong file, code chen_them bổ sung lệnh xóa cột H sheet "Danh muc NT cong viec" trước khi chạy code, nếu không cần sẽ bỏ lệnh này sau
 

File đính kèm

  • File ban dau_1.xlsb
    47.3 KB · Đọc: 6
Bạn xem file đính kèm.
Trong file, code chen_them bổ sung lệnh xóa cột H sheet "Danh muc NT cong viec" trước khi chạy code, nếu không cần sẽ bỏ lệnh này sau
Em cảm ơn anh/chị.
Gần được rồi ạ!
Như đã nêu trên anh/chị giúp em tách mối quan hệ giữa "Nội dung được chèn trong ô của cột G được" và "Từ khóa được điền vào để thay thế các từ khóa đầu câu tương ứng với dòng lấy mẫu" nghĩa là:
Trong Sheet (Toi_TuKhoa) nếu xóa nội dung cột F mà trong cột I vẫn có nội dung tương ứng với mã CV đó thì vẫn điền nội dung vào cột H của Sheet (Danh muc NT cong viec).
Như anh/chị giúp em ở trên, nếu nội dung trong cột F của sheet (Toi_TuKhoa) trống thì nội dung đã được điền trong cột H của Sheet (Danh muc NT cong viec) cũng bị xóa luôn mặc dù nội dung trong cột I của Sheet (Toi_TuKhoa) vẫn còn.
(Nghĩa là chèn dòng thì bao gồm luôn điền mẫu, nhưng nếu không chèn dòng vẫn có thể điền nội dung vào cột H do cột I tromg sheet (Toi_TuKhoa) vẫn có nội dung.)
 
Lần chỉnh sửa cuối:
Em cảm ơn anh/chị.
Gần được rồi ạ!
Như đã nêu trên anh/chị giúp em tách mối quan hệ giữa "Nội dung được chèn trong ô của cột G được" và "Từ khóa được điền vào để thay thế các từ khóa đầu câu tương ứng với dòng lấy mẫu" nghĩa là:
Trong Sheet (Toi_TuKhoa) nếu xóa nội dung cột F mà trong cột I vẫn có nội dung tương ứng với mã CV đó thì vẫn điền nội dung vào cột H của Sheet (Danh muc NT cong viec).
Như anh/chị giúp em ở trên, nếu nội dung trong cột F của sheet (Toi_TuKhoa) trống thì nội dung đã được điền trong cột H của Sheet (Danh muc NT cong viec) cũng bị xóa luôn mặc dù nội dung trong cột I của Sheet (Toi_TuKhoa) vẫn còn.
(Nghĩa là chèn dòng thì bao gồm luôn điền mẫu, nhưng nếu không chèn dòng vẫn có thể điền nội dung vào cột H do cột I tromg sheet (Toi_TuKhoa) vẫn có nội dung.)
Chịu thua rồi bạn.
Có lẽ bạn chờ thành viên khác hỗ trợ vậy nhé.
Thân chào!
 
Viết đến #25 rồi mà vẫn chưa vỡ được ý mình muốn gì để người khác hiểu. Cao siêu quá chăng hay tay nhanh hơn não
 
Viết đến #25 rồi mà vẫn chưa vỡ được ý mình muốn gì để người khác hiểu. Cao siêu quá chăng hay tay nhanh hơn não
Cái đó em đã nêu ở bài #21 rồi nhưng chưa rõ nghĩa nên người giúp có thể chưa rõ, với lại khi chạy code thực tế mới hình dung ra vấn đề.
Nếu có thể nhờ anh/chị giúp em nốt để em áp dụng vào công việc.
 
Chịu thua rồi bạn.
Có lẽ bạn chờ thành viên khác hỗ trợ vậy nhé.
Thân chào!
Xin mạng phép hỏi 2 bạn @Excel my love_1 và bạn @CHAOQUAY , mình có thể dùng code của 2 bạn đã giúp bạn @vc_đi chơi để nhào nặng lại cái bạn @vc_đi chơi muốn không ạ? Mình thấy code cùa 2 bạn hỗ trợ với nhau sẽ ra cái mà bạn ấy muốn ah. Vì 2 bạn đang hỗ trợ bạn ấy, mình không muốn xen ngang, nhưng nếu mà 2 bạn đồng ý thì mình mới dám làm. Cám ơn 2 bạn.
 
Xin mạng phép hỏi 2 bạn @Excel my love_1 và bạn @CHAOQUAY , mình có thể dùng code của 2 bạn đã giúp bạn @vc_đi chơi để nhào nặng lại cái bạn @vc_đi chơi muốn không ạ? Mình thấy code cùa 2 bạn hỗ trợ với nhau sẽ ra cái mà bạn ấy muốn ah. Vì 2 bạn đang hỗ trợ bạn ấy, mình không muốn xen ngang, nhưng nếu mà 2 bạn đồng ý thì mình mới dám làm. Cám ơn 2 bạn.
Hỗ trợ một tay đi bạn, càng đông càng vui mà bạn
 
Lần chỉnh sửa cuối:
Em cảm ơn anh/chị.
Gần được rồi ạ!
Như đã nêu trên anh/chị giúp em tách mối quan hệ giữa "Nội dung được chèn trong ô của cột G được" và "Từ khóa được điền vào để thay thế các từ khóa đầu câu tương ứng với dòng lấy mẫu" nghĩa là:
Trong Sheet (Toi_TuKhoa) nếu xóa nội dung cột F mà trong cột I vẫn có nội dung tương ứng với mã CV đó thì vẫn điền nội dung vào cột H của Sheet (Danh muc NT cong viec).
Như anh/chị giúp em ở trên, nếu nội dung trong cột F của sheet (Toi_TuKhoa) trống thì nội dung đã được điền trong cột H của Sheet (Danh muc NT cong viec) cũng bị xóa luôn mặc dù nội dung trong cột I của Sheet (Toi_TuKhoa) vẫn còn.
(Nghĩa là chèn dòng thì bao gồm luôn điền mẫu, nhưng nếu không chèn dòng vẫn có thể điền nội dung vào cột H do cột I tromg sheet (Toi_TuKhoa) vẫn có nội dung.)
Tôi được phép của các bạn đang theo thread này, nên tôi chỉnh lại tí xíu (dựa vào code của các bạn đã làm) để theo yêu cầu của bạn @vc_đi chơi
Bạn coi file đã đúng ý chưa nha.
 

File đính kèm

  • File ban dau - GPE(2) .xlsm
    66.8 KB · Đọc: 7
Tôi được phép của các bạn đang theo thread này, nên tôi chỉnh lại tí xíu (dựa vào code của các bạn đã làm) để theo yêu cầu của bạn @vc_đi chơi
Bạn coi file đã đúng ý chưa nha.
Em cảm ơn anh!
Xin được anh xem giúp:
Nếu thay đổi nội dung cột I trong sheet (Toi_TuKhoa) và sau đó chạy code "Xóa lấy mẫu" và chạy code "Ghi Lấy Mẫu" hoặc chạy luôn code "Ghi lấy mẫu" thì sẽ không có tác động, phải chạy code "Xóa dòng chèn" rồi chạy code "chèn dòng" tiếp đến chạy code " Ghi lấy mẫu" mới cập nhập dữ liệu thay đổi <Anh giúp em nếu thay đổi dữ liệu ở cột I trong Sheet (Toi_TuKhoa) và khi đó chạy code " Ghi lấy mẫu" sẽ có tác động để cập nhập dữ liệu thay đổi mà không cần phải chạy code"chèn dòng" sau đó chạy code " xóa dòng" thì mới cập nhập dữ liệu thay đổi>
 
Em cảm ơn anh!
Xin được anh xem giúp:
Nếu thay đổi nội dung cột I trong sheet (Toi_TuKhoa) và sau đó chạy code "Xóa lấy mẫu" và chạy code "Ghi Lấy Mẫu" hoặc chạy luôn code "Ghi lấy mẫu" thì sẽ không có tác động, phải chạy code "Xóa dòng chèn" rồi chạy code "chèn dòng" tiếp đến chạy code " Ghi lấy mẫu" mới cập nhập dữ liệu thay đổi <Anh giúp em nếu thay đổi dữ liệu ở cột I trong Sheet (Toi_TuKhoa) và khi đó chạy code " Ghi lấy mẫu" sẽ có tác động để cập nhập dữ liệu thay đổi mà không cần phải chạy code"chèn dòng" sau đó chạy code " xóa dòng" thì mới cập nhập dữ liệu thay đổi>
mai nhá... vợ bèo nheo rùi...
 
Xin mạng phép hỏi 2 bạn @Excel my love_1 và bạn @CHAOQUAY , mình có thể dùng code của 2 bạn đã giúp bạn @vc_đi chơi để nhào nặng lại cái bạn @vc_đi chơi muốn không ạ? Mình thấy code cùa 2 bạn hỗ trợ với nhau sẽ ra cái mà bạn ấy muốn ah. Vì 2 bạn đang hỗ trợ bạn ấy, mình không muốn xen ngang, nhưng nếu mà 2 bạn đồng ý thì mình mới dám làm. Cám ơn 2 bạn.
Mình đồng ý bạn nhé. Rất vui khi bạn tham gia hỗ trợ
 
Em cảm ơn anh!
Xin được anh xem giúp:
Nếu thay đổi nội dung cột I trong sheet (Toi_TuKhoa) và sau đó chạy code "Xóa lấy mẫu" và chạy code "Ghi Lấy Mẫu" hoặc chạy luôn code "Ghi lấy mẫu" thì sẽ không có tác động, phải chạy code "Xóa dòng chèn" rồi chạy code "chèn dòng" tiếp đến chạy code " Ghi lấy mẫu" mới cập nhập dữ liệu thay đổi <Anh giúp em nếu thay đổi dữ liệu ở cột I trong Sheet (Toi_TuKhoa) và khi đó chạy code " Ghi lấy mẫu" sẽ có tác động để cập nhập dữ liệu thay đổi mà không cần phải chạy code"chèn dòng" sau đó chạy code " xóa dòng" thì mới cập nhập dữ liệu thay đổi>
OK FIle của bạn đây
Hy vọng là cuối cùng
 

File đính kèm

  • File ban dau - GPE(4) .xlsm
    68.9 KB · Đọc: 16
Web KT
Back
Top Bottom