Dạ AC cho e hỏi khi e muốn thay đổi phần data valition thì bên cột tham chiếu cũng tự động thay đổi theo list data, ví dụ e muốn đổi “1” bên data valition ở sheet1 thành “ thùng 01 ” thì bên cột C sheet2 tham chiếu cũng sẽ tự đổi theo. Vậy phải viết code như nào ạ
Mong nhận được giải đáp từ các AC
EM CẢM ƠN Ạ
Dạ AC cho e hỏi khi e muốn thay đổi phần data valition thì bên cột tham chiếu cũng tự động thay đổi theo list data, ví dụ e muốn đổi “1” bên data valition ở sheet1 thành “ thùng 01 ” thì bên cột C sheet2 tham chiếu cũng sẽ tự đổi theo. Vậy phải viết code như nào ạ
Mong nhận được giải đáp từ các AC
EM CẢM ƠN Ạ
Bạn đừng nên viết tắt.
Bạn làm thế với mục đích gì vậy. Tại như mình thấy. Dữ liệu sheet1 không có liên kết gì với sheet2. khi thay đổi sheet 2 thì sao nó biết dữ liệu trước đó để mà thay đổi sheet1
Bạn có hiểu nhầm ý chủ thớt không nhỉ, theo mình hiểu, ý chủ thớt là dữ liệu gốc ở bên sheet1. Lấy ví dụ với số 1 đi, bây giờ muốn đổi cái nguồn (source) đó thành "Thùng 01". Nhưng bên sheet2 đã gán xuống sheet từ trước là số 1 rồi. Giờ làm sao để thay đổi cái nguồn đó thì bên sheet2 cũng thay đổi theo. Chứ không phải sửa ở sheet2 mà thay đổi ở sheet1
Bạn có hiểu nhầm ý chủ thớt không nhỉ, theo mình hiểu, ý chủ thớt là dữ liệu gốc ở bên sheet1. Lấy ví dụ với số 1 đi, bây giờ muốn đổi cái nguồn (source) đó thành "Thùng 01". Nhưng bên sheet2 đã gán xuống sheet từ trước là số 1 rồi. Giờ làm sao để thay đổi cái nguồn đó thì bên sheet2 cũng thay đổi theo. Chứ không phải sửa ở sheet2 mà thay đổi ở sheet1
Bạn có hiểu nhầm ý chủ thớt không nhỉ, theo mình hiểu, ý chủ thớt là dữ liệu gốc ở bên sheet1. Lấy ví dụ với số 1 đi, bây giờ muốn đổi cái nguồn (source) đó thành "Thùng 01". Nhưng bên sheet2 đã gán xuống sheet từ trước là số 1 rồi. Giờ làm sao để thay đổi cái nguồn đó thì bên sheet2 cũng thay đổi theo. Chứ không phải sửa ở sheet2 mà thay đổi ở sheet1
Dạ AC cho e hỏi khi e muốn thay đổi phần data valition thì bên cột tham chiếu cũng tự động thay đổi theo list data, ví dụ e muốn đổi “1” bên data valition ở sheet1 thành “ thùng 01 ” thì bên cột C sheet2 tham chiếu cũng sẽ tự đổi theo. Vậy phải viết code như nào ạ
Mong nhận được giải đáp từ các AC
EM CẢM ƠN Ạ
Validation gán thẳng dữ liệu trong list xuống trang tính chứ không gán tham chiếu hoặc lưu lại lịch sử gán. Do đó theo tôi biết là không thể thực hiện được yêu cầu của bạn.
Validation gán thẳng dữ liệu trong list xuống trang tính chứ không gán tham chiếu hoặc lưu lại lịch sử gán. Do đó theo tôi biết là không thể thực hiện được yêu cầu của bạn.
Theo như e tìm đọc trên diễn đàn thì có 1 trường hợp giống e đang muốn làm nhưng là trên 1 sheet, có 1 a đã viết code để thực hiện lệnh trên nhưng e là ở 2 sheet khác nhau nên e nhờ mọi người chỉ e viết code ở trường hợp này ạ
Theo như e tìm đọc trên diễn đàn thì có 1 trường hợp giống e đang muốn làm nhưng là trên 1 sheet, có 1 a đã viết code để thực hiện lệnh trên nhưng e là ở 2 sheet khác nhau nên e nhờ mọi người chỉ e viết code ở trường hợp này ạ
Dạ AC cho e hỏi khi e muốn thay đổi phần data valition thì bên cột tham chiếu cũng tự động thay đổi theo list data, ví dụ e muốn đổi “1” bên data valition ở sheet1 thành “ thùng 01 ” thì bên cột C sheet2 tham chiếu cũng sẽ tự đổi theo. Vậy phải viết code như nào ạ
Mong nhận được giải đáp từ các AC
EM CẢM ƠN Ạ
Private Sub Worksheet_Change(ByVal Target As Range)
Dim newValue As Variant, oldValue As Variant
Application.ScreenUpdating = False
Application.EnableEvents = False
If Target.Column = 1 And Target.Count = 1 Then
newValue = Target.Value
Application.Undo
oldValue = Target.Value
Target.Value = newValue
Worksheets("Sheet2").Columns("C").Replace What:=oldValue, Replacement:=newValue, _
LookAt:=xlWhole, SearchOrder:=xlByRows, MatchCase:=True
End If
Application.ScreenUpdating = True
Application.EnableEvents = True
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
Dim newValue As Variant, oldValue As Variant
Application.ScreenUpdating = False
Application.EnableEvents = False
If Target.Column = 1 And Target.Count = 1 Then
newValue = Target.Value
Application.Undo
oldValue = Target.Value
Target.Value = newValue
Worksheets("Sheet2").Columns("C").Replace What:=oldValue, Replacement:=newValue, _
LookAt:=xlWhole, SearchOrder:=xlByRows, MatchCase:=True
End If
Application.ScreenUpdating = True
Application.EnableEvents = True
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
Dim newValue As Variant, oldValue As Variant
Application.ScreenUpdating = False
Application.EnableEvents = False
If Target.Column = 1 And Target.Count = 1 Then
newValue = Target.Value
Application.Undo
oldValue = Target.Value
Target.Value = newValue
Worksheets("Sheet2").Columns("C").Replace What:=oldValue, Replacement:=newValue, _
LookAt:=xlWhole, SearchOrder:=xlByRows, MatchCase:=True
End If
Application.ScreenUpdating = True
Application.EnableEvents = True
End Sub
Dạ a ơi e thử trên file này chạy được rồi ạ. Nhưng e ráp vào file chính của e thì lại hông được, mà e hông rành về cái này nên có thể nhờ Anh viết code lên file chính này giúp e được hông ạ, (data validation ở sheet "DSSP- SỐ THÙNG"- THAM CHIẾU LÀ CỘT H- ở sheet "Danh Sach"
Em cảm ơn Anh ạ!
Cũng như anh ấy. Mất công giúp rồi. Cảm ơn không được cảm ơn. Lại còn buồn với rầu. Nếu là anh thì anh cảm như thế nào.
Xin nhắc anh thêm. Đừng viết tắt trong bài viết. Không tới lúc chẳng còn ai giúp anh nữa đâu.
Cũng như anh ấy. Mất công giúp rồi. Cảm ơn không được cảm ơn. Lại còn buồn với rầu. Nếu là anh thì anh cảm như thế nào.
Xin nhắc anh thêm. Đừng viết tắt trong bài viết. Không tới lúc chẳng còn ai giúp anh nữa đâu.
Trong tập tin đính kèm đã có code được sửa. Tôi cũng xóa toàn bộ (biến thành chú thích) code trong sheet "Danh Sach".
Mã:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim newValue As Variant, oldValue As Variant
Application.ScreenUpdating = False
Application.EnableEvents = False
If Target.Count = 1 And Target.Row >= 3 And Target.Column = 4 Then
newValue = Target.Value
Application.Undo
oldValue = Target.Value
Target.Value = newValue
Worksheets("Danh Sach").Range("H5:H1000").Replace What:=oldValue, Replacement:=newValue, _
LookAt:=xlWhole, SearchOrder:=xlByRows, MatchCase:=True
End If
Application.ScreenUpdating = True
Application.EnableEvents = True
End Sub
Trong tập tin đính kèm đã có code được sửa. Tôi cũng xóa toàn bộ (biến thành chú thích) code trong sheet "Danh Sach".
Mã:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim newValue As Variant, oldValue As Variant
Application.ScreenUpdating = False
Application.EnableEvents = False
If Target.Count = 1 And Target.Row >= 3 And Target.Column = 4 Then
newValue = Target.Value
Application.Undo
oldValue = Target.Value
Target.Value = newValue
Worksheets("Danh Sach").Range("H5:H1000").Replace What:=oldValue, Replacement:=newValue, _
LookAt:=xlWhole, SearchOrder:=xlByRows, MatchCase:=True
End If
Application.ScreenUpdating = True
Application.EnableEvents = True
End Sub
Em vẫn chưa ạ, e không biết sai ở đâu từ hướng dẫn của các anh ở trên, em gửi file anh có thể làm trên file gốc giúp e được không ạ, e muốn bên sheet “Danh Sach” khi e gắn data validation với thông tin gốc bên sheet “DSSP” khi em thay đổi thông tin bảng gốc thì cột tham chiếu cũng sẽ tự động thay đổi với những thông tin đã tham chiếu trước đó, ở đây e có 2 cột gắn data là “ tên sản phẩm” và “số thùng” bên sheet “Danh Sach”
Mong nhận được phản hồi từ anh ạ
Em cảm ơn