Cách tự động cập nhật giá trị của cell giữa các sheet với nhau

Liên hệ QC

KhoiLe12

Thành viên mới
Tham gia
22/9/21
Bài viết
27
Được thích
2
Em chào mọi người, hiện tại em đang cần hoàn thành task trên Excel với yêu cầu: Khi nhập giá trị vào 1 ô của sheet1 thì giá trị đó sẽ được tự động cập nhật vào 1 ô của sheet2 và ngược lại. Hiện tại em có tìm hiểu thì được biết có thể xài Mirror Cell trong VBA, tuy nhiên em chỉ biết các Mirror Cell trong 1 sheet với code như sau:

Private Sub Worksheet_Change(ByVal Target As Range)
MirrorCell = False
Select Case Target.Address
Case "$D$3"
MirrorCell = "B7"
Case "$E$3"
MirrorCell = "B8"
Case "$F$3"
MirrorCell = "B9"
Case "$G$3"
MirrorCell = "B10"
Case "$H$3"
MirrorCell = "B11"

Case "$B$7"
MirrorCell = "D3"
Case "$B$8"
MirrorCell = "E3"
Case "$B$9"
MirrorCell = "F3"
Case "$B$10"
MirrorCell = "G3"
Case "$B$11"
MirrorCell = "H3"
End Select
If MirrorCell = False Then Exit Sub
Application.EnableEvents = False
Range(MirrorCell).Value = Target.Value
Application.EnableEvents = True
End Sub


Nếu sử dụng code như vậy thì hiện tại nếu em muốn mirror thêm ô nào thì em buộc phải nhập tay ô đó. Trong trường hợp em đang có một lượng ô rất lớn (khoảng vài trăm ô) cần mirror thì liệu có cách nào để làm thay vì nhập tay từng ô không ạ.

Em cảm ơn cả nhà, chúc cả nhà ngày mới tốt lành.
Update: Em đính kèm file demo, input range C4-C14 ở sheet1 sẽ output ra range C4-C14 ở sheet2 và ngược lại
 

File đính kèm

  • test1.xlsm
    17.8 KB · Đọc: 3
Lần chỉnh sửa cuối:
Em chào mọi người, hiện tại em đang cần hoàn thành task trên Excel với yêu cầu: Khi nhập giá trị vào 1 ô của sheet1 thì giá trị đó sẽ được tự động cập nhật vào 1 ô của sheet2 và ngược lại. Hiện tại em có tìm hiểu thì được biết có thể xài Mirror Cell trong VBA, tuy nhiên em chỉ biết các Mirror Cell trong 1 sheet với code như sau:

Private Sub Worksheet_Change(ByVal Target As Range)
MirrorCell = False
Select Case Target.Address
Case "$D$3"
MirrorCell = "B7"
Case "$E$3"
MirrorCell = "B8"
Case "$F$3"
MirrorCell = "B9"
Case "$G$3"
MirrorCell = "B10"
Case "$H$3"
MirrorCell = "B11"

Case "$B$7"
MirrorCell = "D3"
Case "$B$8"
MirrorCell = "E3"
Case "$B$9"
MirrorCell = "F3"
Case "$B$10"
MirrorCell = "G3"
Case "$B$11"
MirrorCell = "H3"
End Select
If MirrorCell = False Then Exit Sub
Application.EnableEvents = False
Range(MirrorCell).Value = Target.Value
Application.EnableEvents = True
End Sub


Nếu sử dụng code như vậy thì hiện tại nếu em muốn mirror thêm ô nào thì em buộc phải nhập tay ô đó. Trong trường hợp em đang có một lượng ô rất lớn (khoảng vài trăm ô) cần mirror thì liệu có cách nào để làm thay vì nhập tay từng ô không ạ.

Em cảm ơn cả nhà, chúc cả nhà ngày mới tốt lành.
Chắc là đính kèm file cụ thể đầu vào vùng nào ở sheet nào, đầu ra vùng nào sheet nào thì có lẽ nhanh có đáp án hơn
 
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom