Phương pháp nhập dữ liệu đồng thời vào nhiều Sheet

Bài viết dưới đây hướng dẫn chi tiết cách nhập dữ liệu đồng thời vào nhiều Sheet.

Có 2 cách để nhập dữ liệu đồng thời vào nhiều Sheet.

Cách 1: Nhóm các sheet thành group sử dụng phím Ctrl.

Cách 2: Sử dụng VBA để nhập dữ liệu.

1. Nhóm các sheet thành group sử dụng phím Ctrl

Bước 1: Nhấn giữ phím Ctrl và kích chọn vào tên các sheet muốn nhập dữ liệu đồng thời. Sau khi chọn xong các sheet được nhóm tạo thành 1 Group điều này được thể hiện trên tên của file.

Group

Bước 2: Sau khi Group xong tiến hành nhập dữ liệu tại 1 sheet bất kì.

Nhập dữ liệu

Bước 3: Kết quả tại các sheet khác:

Kết quả tại Sheet2

Sheet 5:

Kết quả tại Sheet5

Trường hợp bạn muốn loại bỏ sheet nào đó ra khỏi nhóm làm như sau: Click chuột phải vào tên sheet -> Chọn UnGroup Sheets.

UnGroup Sheets

Chú ý: Phương pháp này có nhược điểm là bạn không thể có những tùy chọn riêng bất cứ dữ liệu nhập tại sheet nào đều được điền vào các sheet khác. Bạn nên sử dụng VBA để nhập dữ liệu.

2. Sử dụng VBA để nhập dữ liệu

Bước 1: Mở Excel, tạo 5 sheet muốn nhập dữ liệu. Ở đây mình muốn nhập dữ liệu ban đầu vào sheet 5. Tại sheet5 tạo vùng dữ liệu muốn nhập (các sheet khác chỉ nhập dữ liệu giống nhau trong vùng chọn này) -> Chuột phải chọn Define Name.

Define Name

Bước 2: Hộp thoại xuất hiện đặt tên cho vùng dữ liệu được chọn -> OK. Chú ý ghi nhớ tên vùng chọn.

OK

Sau khi đặt tên vùng chọn:

Sau khi đặt tên vùng chọn

Bước 3: Nhấn tổ hợp phím Alt + F11. Cửa sổ VBA xuất hiện chọn Sheet5 -> Chọn sự kiện SelectionChange của Worksheet và nhập câu lệnh như hình dưới:

SelectionChange

Code:

// Sự kiện SelectionChange.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Range("MyRank"), Target) Is Nothing Then
Sheets(Array("Sheet5", "Sheet4", "Sheet3", "Sheet2", "Sheet1")).Select
Else
Me.Select
End If
End Sub
// Sự kiện Change.
Private Sub worksheet_Change(ByVal Target As Range)
If Not Intersect(Range("MyRank"), Target) Is Nothing Then
With Range("MyRank")
.Copy Destination:=Sheets("Sheet3").Range("A5")
.Copy Destination:=Sheets("Sheet1").Range("E5")
End With
End If
End Sub

Chú ý: Bạn chọn Sheet nào nhập dữ liệu đầu vào thì trong câu lệnh viết sheet đó đầu tiên. Như ví dụ ở đây là Sheet5.

Bước 4: Nhấn Alt + F11 để quay lại nhập dữ liệu tại sheet5.

Nhập dữ liệu tại Sheet5

Kết quả tại các sheet khác:

Sheet 4:

Kết quả tại Sheet4

Sheet1:

Kết quả tại Sheet1

Chú ý: Trường hợp bạn nhập dữ liệu trong Sheet 5 ngoài vùng chọn đã được đặt tên MyRank thì dữ liệu không được vào các sheet kia.

Trường hợp bạn muốn nhập dữ liệu vào vị trí khác nhau trong các sheet kia có thể làm như sau:

Bước 1: Nhấn tổ hợp phím Alt + F11 cửa sổ VBA xuất hiện chọn sheet5 -> chọn sự kiện Change của Worksheet -> nhập đoạn mã sau.

Change

Các bạn lưu ý tùy yêu cầu các bạn chọn vị trí nhập dữ liệu:

Chọn vị trí nhập dữ liệu

Bước 2: Nhấn tổ hợp phím Alt + F11 quay trở lại Sheet5 nhập dữ liệu mới.

Nhập dữ liệu mới tại Sheet5

Kết quả ở Sheet 1:

Kết quả ở Sheet 3:

Kết quả ở Sheet3

Trên đây là những phương pháp giúp các bạn nhập liệu tiết kiệm được thời gian và công sức.

Chúc các bạn thành công!

Viết bình luận