Nhờ các bạn Giúp giùm Code VBA tìm dữ liệu theo cột ma so (xem file đính kèm) và cập nhật dữ liệu vào các cột dữ liệu còn lại (địa chỉ, điện thoại) nếu có thay đổi.Xin cám ơn.
Nhờ các bạn Giúp giùm Code VBA tìm dữ liệu theo cột ma so (xem file đính kèm) và cập nhật dữ liệu vào các cột dữ liệu còn lại (địa chỉ, điện thoại) nếu có thay đổi.Xin cám ơn.
Ngay từ đầu bạn viết như vầy, có phải đỡ tốn thời gian của bạn & của cộng đồng hay không!?!Vì dữ liệu này rất lớn (hơn 10000) hàng nên không thể chọn bằng combobox mà nhập trực tiếp từ textbox. Và mình muốn là khi nhập mã số vào, nếu đã có mã này thì lấy dữ liệu ra (để xem sửa), sau khi sửa thì ghi đè lại. Còn nếu mã số chưa có thì ghi mới vào bên dưới cùng. Nhờ bạn xem giúp giùm. Cám ơn nhiều.
Option Explicit
Sub CapNhat()
Dim lrow As Long, Zz As Long
Dim Rng As Range
lrow = Sheets("S1").[a65432].End(xlUp).Row
With Worksheets(1).Range("a2:a" & lrow)
Set Rng = .Find([b2], LookIn:=xlValues)
If Rng Is Nothing Then
With Sheets("S1").Cells(lrow + 1, 1)
.Value = [b2]
.Offset(, 1) = [b2].Offset(1)
.Offset(, 2) = [b2].Offset(2)
.Offset(, 3) = [b2].Offset(3)
End With
Else
With Rng
.Offset(, 1) = [b2].Offset(1)
.Offset(, 2) = [b2].Offset(2)
.Offset(, 3) = [b2].Offset(3)
End With
End If
[b2].Resize(4, 1).ClearContents
End With
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
Dim lrow As Long, Zz As Long
Dim Rng As Range
If Not Intersect(Target, [b2]) Is Nothing Then
lrow = Sheets("S1").[a65432].End(xlUp).Row
With Worksheets(1).Range("a2:a" & lrow)
Set Rng = .Find(Target, LookIn:=xlValues)
If Not Rng Is Nothing Then
Target.Offset(1) = Rng.Offset(, 1)
Target.Offset(2) = Rng.Offset(, 2)
Target.Offset(3) = Rng.Offset(, 3)
End If
End With
End If
End Sub