Tạo công thức kết hợp tham chiếu và giá trị

Chia sẻ bởi:hands
★★★★★
Quảng cáo

Xin chào GPE

giúp em giải quyết code cho công thức ở cột màu vàng sheet A với ạ
Nội dung mong muốn như trong bức ảnh. do file khá nặng nên em hạn chế dùng công thức dò tìm nên tính viết code mà chưa được
Cảm ơn đã đọc bài và giúp đỡ ạ!

Chạy thử code này (đã sửa lại code cũ)

Sub test()
    Dim i As Long, dic As Object, lr As Long, arrA(), ArrB(), KQ(), dk As String, a

Application.ScreenUpdating = False
    Application.Calculation = xlCalculationManual
    Set dic = CreateObject("scripting.dictionary")
    With Sheets("B")
        lr = .Range("D100000").End(xlUp).Row
        ArrB = .Range("D5:F" & lr).Value
        For i = 1 To UBound(ArrB, 1)
            dk = ArrB(i, 1) & "#" & ArrB(i, 2)
            If Not dic.exists(dk) Then
                dic(dk) = i
            End If
        Next
    End With
    With Sheets("A")
        lr = .Range("C100000").End(xlUp).Row
        arrA = .Range("C5:G" & lr).Value
ReDim KQ(1 To UBound(arrA), 1 To 1)

For i = 1 To UBound(arrA, 1)
            dk = arrA(i, 1) & "#" & arrA(i, 2)
            If dic.exists(dk) Then
                a = dic(dk)
                KQ(i, 1) = arrA(i, 3) + arrA(i, 4) - arrA(i, 5) - ArrB(a, 3)
            Else
                KQ(i, 1) = arrA(i, 3) + arrA(i, 4) - arrA(i, 5)
            End If

Next
.Range("I5").Resize(UBound(arrA, 1), 1) = KQ
    End With

Set dic = Nothing
    Application.ScreenUpdating = True
    Application.Calculation = xlCalculationAutomatic
End Sub

Lưu ý kết quả đang để ở I5

www.giaiphapexcel.com/diendan/threads/t%E1%BA%A1o-c%C3%B4ng-th%E1%BB%A9c-k%E1%BA%BFt-h%E1%BB%A3p-tham-chi%E1%BA%BFu-v%C3%A0-gi%C3%A1-tr%E1%BB%8B.167113/

Kỹ năng giải quyết vấn đề hiệu quả
Khóa học SprinGO phù hợp

Kỹ năng giải quyết vấn đề hiệu quả

Mô tả Nội dung Đánh giá Tài nguyên KỸ NĂNG GIẢI QUYẾT VẤN ĐỀ HIỆU QUẢHiểu đúng vấn đề là một nửa của giải...

Xem khóa học
★★★★★ 5 ★ 1 👤 3 ▥ 0
Quảng cáo

Bạn nên đọc

Bình luận

Quảng cáo

Cũ vẫn chất

Xem thêm