GTK-PM
Thành viên thường trực




- Tham gia
- 10/11/13
- Bài viết
- 313
- Được thích
- 15
Mình có file xuất nhập tồn kho trong file " KHO " đã đính kèm mình muốn nhờ các cao thủ sửa giúp mình code VBA dưới đây để phù hợp với sheet: BC_NGAY, BC_HANGMUC, BC_LOAIVATTU vì file bên dưới mình dùng hàm nên rất bất tiện trong theo dõi nên mình muốn dùng code VBA để thống kê . Mong các bạn giúp đỡ
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, [F2]) Is Nothing Then
Dim Sh As Worksheet, Rng As Range, sRng As Range
Dim MyAdd As String
Set Sh = ThisWorkbook.Worksheets("NhatKy")
[b8].Resize(13, 5).ClearContents
Set Rng = Sh.Range(Sh.[F6], Sh.[F6].End(xlDown))
Set sRng = Rng.Find(Target.Offset(1).Value, , xlValues, xlWhole)
If Not sRng Is Nothing Then
MyAdd = sRng.Address
Do
With [B21].End(xlUp).Offset(1)
.Value = sRng.Offset(, -4).Value '"SoCT"'
.Offset(, 1).Value = sRng.Offset(, -2).Value 'Ngày NX'
.Offset(, 2).Value = sRng.Offset(, 2).Value 'DVT'
If sRng.Offset(, -3).Value = "N" Then
.Offset(, 3).Value = sRng.Offset(, 1).Value 'LuongNhap'
Else
.Offset(, 4).Value = sRng.Offset(, 1).Value 'LuongXuat'
End If
End With
Set sRng = Rng.FindNext(sRng)
Loop While Not sRng Is Nothing And sRng.Address <> MyAdd
Else
MsgBox "Nothing"
End If
End If
End Sub
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, [F2]) Is Nothing Then
Dim Sh As Worksheet, Rng As Range, sRng As Range
Dim MyAdd As String
Set Sh = ThisWorkbook.Worksheets("NhatKy")
[b8].Resize(13, 5).ClearContents
Set Rng = Sh.Range(Sh.[F6], Sh.[F6].End(xlDown))
Set sRng = Rng.Find(Target.Offset(1).Value, , xlValues, xlWhole)
If Not sRng Is Nothing Then
MyAdd = sRng.Address
Do
With [B21].End(xlUp).Offset(1)
.Value = sRng.Offset(, -4).Value '"SoCT"'
.Offset(, 1).Value = sRng.Offset(, -2).Value 'Ngày NX'
.Offset(, 2).Value = sRng.Offset(, 2).Value 'DVT'
If sRng.Offset(, -3).Value = "N" Then
.Offset(, 3).Value = sRng.Offset(, 1).Value 'LuongNhap'
Else
.Offset(, 4).Value = sRng.Offset(, 1).Value 'LuongXuat'
End If
End With
Set sRng = Rng.FindNext(sRng)
Loop While Not sRng Is Nothing And sRng.Address <> MyAdd
Else
MsgBox "Nothing"
End If
End If
End Sub