Cập nhật nội dung sang sheet khác có điều kiện (1 người xem)

Liên hệ QC

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

AnhThu-1976

Thành viên tích cực
Tham gia
17/10/14
Bài viết
1,061
Được thích
175
Nhờ các anh/Chị giúp viết tiếp code cho em trường hợp sau:
Hiện nay, em đang viết code để cập nhật từ Sheet HD sang sheet BanRa
Các trường khác thì em làm cập nhật từ HD sang BanRa được
Chỉ có trường hợp này là em không biết viết như thế nào, em nhờ anh chị viết giùm
Tại sheet BanRa, Cột H (Nội Dung) em chưa biết cách lấy như thế nào từ sheet HD
Cách lấy Nội dung từ Sheet HD sang Sheet BanRa như sau:
Tại Sheet HD, ta tìm từ B19 cho đến B29, nếu dòng nào có chuỗi bắt đầu là BL: thì sẽ lấy phần sau của chuỗi BL:
Ví dụ: BL: AAABBBCCC123456789, thì chỉ lấy AAABBBCCC123456789 cập nhật sang Sheet BanRa, lưu ý bỏ các khoảng trắng trước và sau chuỗi AAABBBCCC123456789 (nếu có)
Trường hợp nếu B19:B29 của sheet HD không có chuỗi BL: thì bỏ qua
Em cảm ơn!
 

File đính kèm

Nhờ các anh/Chị giúp viết tiếp code cho em trường hợp sau:
Hiện nay, em đang viết code để cập nhật từ Sheet HD sang sheet BanRa
Các trường khác thì em làm cập nhật từ HD sang BanRa được
Chỉ có trường hợp này là em không biết viết như thế nào, em nhờ anh chị viết giùm
Tại sheet BanRa, Cột H (Nội Dung) em chưa biết cách lấy như thế nào từ sheet HD
Cách lấy Nội dung từ Sheet HD sang Sheet BanRa như sau:
Tại Sheet HD, ta tìm từ B19 cho đến B29, nếu dòng nào có chuỗi bắt đầu là BL: thì sẽ lấy phần sau của chuỗi BL:
Ví dụ: BL: AAABBBCCC123456789, thì chỉ lấy AAABBBCCC123456789 cập nhật sang Sheet BanRa, lưu ý bỏ các khoảng trắng trước và sau chuỗi AAABBBCCC123456789 (nếu có)
Trường hợp nếu B19:B29 của sheet HD không có chuỗi BL: thì bỏ qua
Em cảm ơn!
Sửa code của bạn lại cho gọn:
PHP:
Sub GPE()
Dim R As Long, Cll As Range, Ws As Worksheet
Set Ws = Sheets("BanRa")
With Sheets("HD")
        R = Ws.Range("B50000").End(xlUp).Row + 1
        Ws.Range("B" & R).Value = .Range("F1").Value
        Ws.Range("C" & R).Value = .Range("F2").Value
        Ws.Range("D" & R).Value = .Range("F3").Value
        Ws.Range("E" & R).Value = .Range("A3").Value
        Ws.Range("F" & R).Value = .Range("B12").Value
        Ws.Range("G" & R).Value = .Range("B13").Value
        Ws.Range("I" & R).Value = .Range("F30").Value
        Ws.Range("J" & R).Value = .Range("C31").Value
        Ws.Range("K" & R).Value = .Range("F31").Value
        Ws.Range("M" & R).Value = .Range("F32").Value
        For Each Cll In .Range("B19:B29")
            If Left(Cll.Value, 3) = "BL:" Then
                Ws.Range("H" & R).Value = Trim(Mid(Cll, 4, Len(Cll)))
                Exit For
            End If
        Next Cll
    .Range("B11:B15, F3, A3, B19:E29, C31").ClearContents
    .Range("F3").Select
End With
End Sub
 
Lần chỉnh sửa cuối:
Upvote 0
Sửa code của bạn lại cho gọn:
Dạ em cảm ơn Thầy Ba Tê ạ
Cho em hỏi trường hợp bẫy lỗi như sau
Do trong quá trình nhập thì dễ bị nhập trùng: Mẫu số, ký hiệu và số hóa đơn (3 tiêu chí này cùng trùng)
Nghĩa là các số liệu từ F1:F3 của sheet HD, sẽ trùng với một dòng nào đó từ cột Cột B đết cột D của Sheet BanRa, thì code sẽ báo " Hoa don bi trung" và nó sẽ không cập nhật qua sheet BanRa, nhưng đồng thời không xóa các số liệu trên sheet HD
Nhờ Thầy Ba Tê và các Anh/Chị giúp em thêm trường hợp này!
 
Upvote 0
Dạ em cảm ơn Thầy Ba Tê ạ
Cho em hỏi trường hợp bẫy lỗi như sau
Do trong quá trình nhập thì dễ bị nhập trùng: Mẫu số, ký hiệu và số hóa đơn (3 tiêu chí này cùng trùng)
Nghĩa là các số liệu từ F1:F3 của sheet HD, sẽ trùng với một dòng nào đó từ cột Cột B đết cột D của Sheet BanRa, thì code sẽ báo " Hoa don bi trung" và nó sẽ không cập nhật qua sheet BanRa, nhưng đồng thời không xóa các số liệu trên sheet HD
Nhờ Thầy Ba Tê và các Anh/Chị giúp em thêm trường hợp này!
 

File đính kèm

Upvote 0
Em xin chân thành cảm ơn Thầy!
Chuẩn bị sang năm mới, Em chúc thầy nhiều sức khỏe & thành đạt.
 
Upvote 0
Web KT

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

Back
Top Bottom