Nhờ viết code copy công thức với điều kiện tìm được (1 người xem)

Liên hệ QC

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

vova2209

Thành viên tích cực
Tham gia
5/4/17
Bài viết
835
Được thích
112
Giới tính
Nam
Nghề nghiệp
Đường bộ
em muốn copy công thức từ trên xuống nếu như thỏa mãn điều kiện tìm được trong vùng tìm kiếm!
file đính kèm bên dưới, mong được giúp đỡ
 

File đính kèm

xin được giúp đỡ! hay em diễn giải ko đúng cách ạ
 
Upvote 0
xin được giúp đỡ! hay em diễn giải ko đúng cách ạ
Đọc thì có thể hiểu, nhưng viết code không chạy được vì công thức của bạn bị link tùm lum từ file khác, mà máy người khác không có file đó công thức sao "chịu chạy" được.
Mã:
K8=IFERROR(HLOOKUP($C8;'E:\Dropbox\Bi Kip Vo Va\List Giao Thong\[List_V17.8.21.xlsm]DMVua'!$E$8:$J$1000;MATCH($B8&$E8&K$1;INDEX('E:\Dropbox\Bi Kip Vo Va\List Giao Thong\[List_V17.8.21.xlsm]DMVua'!$B$9:$B$1000&'E:\Dropbox\Bi Kip Vo Va\List Giao Thong\[List_V17.8.21.xlsm]DMVua'!$K$9:$K$1000&'E:\Dropbox\Bi Kip Vo Va\List Giao Thong\[List_V17.8.21.xlsm]DMVua'!$C$9:$C$1000;);0)+1;0);"")
 
Upvote 0
Đọc thì có thể hiểu, nhưng viết code không chạy được vì công thức của bạn bị link tùm lum từ file khác, mà máy người khác không có file đó công thức sao "chịu chạy" được.
Mã:
K8=IFERROR(HLOOKUP($C8;'E:\Dropbox\Bi Kip Vo Va\List Giao Thong\[List_V17.8.21.xlsm]DMVua'!$E$8:$J$1000;MATCH($B8&$E8&K$1;INDEX('E:\Dropbox\Bi Kip Vo Va\List Giao Thong\[List_V17.8.21.xlsm]DMVua'!$B$9:$B$1000&'E:\Dropbox\Bi Kip Vo Va\List Giao Thong\[List_V17.8.21.xlsm]DMVua'!$K$9:$K$1000&'E:\Dropbox\Bi Kip Vo Va\List Giao Thong\[List_V17.8.21.xlsm]DMVua'!$C$9:$C$1000;);0)+1;0);"")
Giống như hàm vlookup ý anh! Chỉ cần tìm được C212 trong vùng B8:AB12 sẽ copy Công Thức Cột C:E và cột I:AB
 

File đính kèm

  • Untitled.png
    Untitled.png
    113.8 KB · Đọc: 6
Lần chỉnh sửa cuối:
Upvote 0
file gốc đây anh ơi! a xem giúp em với
Nhập thủ công từng ô, cột B, từ dòng 15 xuống, tìm dữ liệu từ B5 đến B12, nếu đúng thì copy công thức từ dòng tìm thấy xuống dòng đang nhập ?
Công thức "đúng / sai" không cần biết.
 

File đính kèm

Upvote 0
Nhập thủ công từng ô, cột B, từ dòng 15 xuống, tìm dữ liệu từ B5 đến B12, nếu đúng thì copy công thức từ dòng tìm thấy xuống dòng đang nhập ?
Công thức "đúng / sai" không cần biết.
Chuẩn ý em bác ạ! nhưng bị lỗi ở chỗ cột P bị RC (=ROUNDUP(PRODUCT(RC8;RC9)*RC11/RC15;0) . Bác xem hộ e chỗ này ạ
 
Upvote 0
Bị lỗi RC ở vài cột! anh xem lại dùm em với
 

File đính kèm

Upvote 0
Chuẩn ý em bác ạ! nhưng bị lỗi ở chỗ cột P bị RC (=ROUNDUP(PRODUCT(RC8;RC9)*RC11/RC15;0) . Bác xem hộ e chỗ này ạ
Bạn tìm dòng gán = Arr? sửa thành vầy thử xem:
Mã:
Target.Offset(, 2).Resize(, 2).FormulaR1C1 = Arr1
Target.Offset(, 7).Resize(, 20).FormulaR1C1 = Arr2
 
Upvote 0
okje! rồi anh ơi.. em cảm ơn anh nhiều. Chúc anh 1 ngày vui vẻ
Rút gọn nó lại như vầy đi:
Mã:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Cll As Range, Tem
If Target.Column = 2 Then
    If Target.Count = 1 And Target.Row > 14 Then
        Tem = Target.Value
        For Each Cll In Range("B8:B12")
            If Cll.Value = Tem Then
                Target.Offset(, 2).Resize(, 2).FormulaR1C1 = Cll.Offset(, 2).Resize(, 2).FormulaR1C1
                Target.Offset(, 7).Resize(, 20).FormulaR1C1 = Cll.Offset(, 7).Resize(, 20).FormulaR1C1
                Exit For
            End If
        Next Cll
    End If
End If
End Sub
 
Upvote 0
Rút gọn nó lại như vầy đi:
Mã:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Cll As Range, Tem
If Target.Column = 2 Then
    If Target.Count = 1 And Target.Row > 14 Then
        Tem = Target.Value
        For Each Cll In Range("B8:B12")
            If Cll.Value = Tem Then
                Target.Offset(, 2).Resize(, 2).FormulaR1C1 = Cll.Offset(, 2).Resize(, 2).FormulaR1C1
                Target.Offset(, 7).Resize(, 20).FormulaR1C1 = Cll.Offset(, 7).Resize(, 20).FormulaR1C1
                Exit For
            End If
        Next Cll
    End If
End If
End Sub
Target.Offset(, 2).Resize(, 2).FormulaR1C1 = Cll.Offset(, 2).Resize(, 2).FormulaR1C1
Target.Offset(, 7).Resize(, 20).FormulaR1C1 = Cll.Offset(, 7).Resize(, 20).FormulaR1C1
anh mô tả cho em đoạn này với ạ
Thanks anh! ngon lắm rùi..
 
Upvote 0
Web KT

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

Back
Top Bottom