Dạ em xin gởi code VBA trong sheet " XUAT" của em lên đây luôn.
Mong mọi người sửa code giùm em.
Option Explicit
Const SoDg As Integer = 9999
Dim Sh As Worksheet, Rng As Range
Private Sub Worksheet_Change(ByVal Target As Range)
Dim sRng As Range: Dim j As Byte
If Not Intersect(Target, [H1].Resize(SoDg)) Is Nothing Then
GPE
Set sRng = Rng.Find(Target.Offset(, -4).Value, , xlFormulas, xlWhole)
If Not sRng Is Nothing Then
For j = 2 To 208
Target.Offset(, j - 1).Value = Target.Value * sRng.Offset(, j).Value * (1 + 0.01 * sRng.Offset(1, j).Value)
Next j
End If
ElseIf Not Intersect(Target, [C2].Resize(SoDg)) Is Nothing Then
GPE
Set sRng = Rng.Find(Target.Value, , xlFormulas, xlWhole)
If Not sRng Is Nothing Then Target.Offset(, 1).Value = sRng.Offset(, 1).Value
End If
End Sub
Sub GPE()
Set Sh = ThisWorkbook.Worksheets("TABLE")
Set Rng = Sh.Range(Sh.[B5], Sh.[B65536].End(xlUp))
End Sub
Anh HaiYen17 sửa giúp em cho nó copy hàng loạt vào và chạy kết quả tiêu hao sang các cột NL1, NL2, NL3...... giùm em nha anh.
Em chân thành cám ơn. Code này em lấy trong file của anh nên gặp sự cố em không biết chỉnh làm sao cho theo ý mình. Mong anh giúp đỡ