Đôi khi, khi sắp xếp dữ liệu, tạo biểu đồ hoặc phân tích thông tin, bạn có thể cần hoán đổi hai ô (tức là thay đổi vị trí của hai ô).
Mặc dù không có tính năng tích hợp sẵn trong Excel để hoán đổi các ô, nhưng điều này có thể dễ dàng thực hiện được bằng cách sử dụng kỹ thuật kéo và thả chuột đơn giản hoặc phương pháp Cắt – Dán truyền thống và cũ.
Trong bài viết ngắn này, sẽ chỉ cho bạn cách hoán đổi các ô trong Excel bằng cách sử dụng một số phím tắt đơn giản và mã VBA.
Sử dụng chuột + phím Shift để hoán đổi ô
Cách dễ nhất và nhanh nhất để hoán đổi nhanh hai ô là sử dụng kỹ thuật phím Chuột và Shift này.
Điều này hoạt động tốt nhất khi bạn muốn hoán đổi sang các ô hoặc cột liền kề, nhưng nó cũng có thể được sử dụng để hoán đổi các ô hoặc cột không liền kề.
Bên dưới, có tập dữ liệu mẫu trong đó có tên người đào tạo ở cột B và ngày họ cần thực hiện khóa đào tạo ở cột A.
Bây giờ, vì lý do nào đó, Mike không thể tham gia khóa huấn luyện vào thứ Ba và muốn đổi chỗ với Jenny vào thứ Tư.
Dưới đây là các bước bạn có thể sử dụng để hoán đổi nhanh hai ô sao cho tên được hoán đổi cho nhau trong ô B3 và B4:
- Chọn một trong các ô mà bạn muốn hoán đổi. Trong trường hợp này, sẽ chọn ô B3 có tên Mike.
- Đưa con trỏ đến cạnh dưới cùng của vùng chọn. Bạn sẽ nhận thấy con trỏ thay đổi thành biểu tượng bốn mũi tên (xem hình ảnh bên dưới).
- Giữ phím Shift (và tiếp tục giữ phím đó)
- Nhấn và giữ phím chuột phải (hoặc phím bàn phím nếu sử dụng trackpad trên máy tính xách tay)
- Di chuyển con trỏ chuột xuống cho đến khi bạn thấy một đường đậm màu xanh lục (trông giống chữ H kéo dài) bên dưới ô B4 (là ô mà muốn hoán đổi ô hiện đang được chọn của mình)
- Để lại phím chuột và phím Shift.
Bạn có thể xem toàn bộ quá trình đang hoạt động bên dưới:
Hai ô đã được hoán đổi. Mike hiện đang ở trước Thứ Tư và Jenny hiện đang ở trước Thứ Ba.
Đây là cách đơn giản và nhanh nhất để hoán đổi nhanh các ô hoặc thậm chí các hàng và cột. Điều duy nhất bạn cần đảm bảo là đường màu xanh đậm xuất hiện sau ô mà bạn muốn di chuyển ô hiện tại.
Hoán đổi các ô không liền kề
Trong ví dụ trên, đã chỉ cho bạn cách hoán đổi hai ô liền kề.
Bạn cũng có thể sử dụng điều này để trao đổi sang các ô không liền kề. Tuy nhiên, bạn sẽ phải lặp lại quá trình này hai lần.
Ví dụ: giả sử có cùng bộ dữ liệu như hiển thị bên dưới và muốn sắp xếp ngày cho Mike và Kate.
Trong trường hợp này, trước tiên sẽ phải di chuyển ô B3 (Mike) sang B5 (Kate). Điều này sẽ chuyển Mike vào vị trí của Kate và di chuyển phòng giam của Jenny và Kate lên trên.
Bây giờ, sẽ phải chọn ô B4 (có tên Kate) và chuyển nó sang ô B3.
Sử dụng tính năng Cắt và Dán Cũ và Đáng Tin Cậy
Một cách khác để hoán đổi ô là sử dụng tùy chọn cắt và dán dài hơn nhưng đáng tin cậy.
Trong phương pháp này, quy trình vẫn giữ nguyên cho dù bạn hoán đổi các ô liền kề hay không liền kề.
Hướng dẫn cho bạn cách nó hoạt động:
Bên dưới, có tập dữ liệu muốn hoán đổi các ô có tên Mike và Jenny.
Dưới đây là các bước để hoán đổi hai ô bằng phương pháp cắt – dán.
- Chọn một trong các ô bạn muốn hoán đổi. Trong trường hợp này sẽ chọn ô B3.
- Cut cell. Bạn có thể sử dụng phím tắt Control + X trong Windows hoặc Command + X trong Mac. Bạn cũng có thể nhấp chuột phải vào ô và sau đó nhấp vào Cắt.
- Đi tới bất kỳ ô trống nào trong trang tính, chọn ô đó và dán ô bạn đã cắt ở Bước 2. Bạn có thể sử dụng Control + V để thực hiện việc này (hoặc Command + V trong máy Mac). Trong ví dụ này, sẽ thực hiện việc này trong ô D5.
- Bây giờ chọn ô B4 và cắt nó (Control + X). Bạn sẽ thấy những con kiến nhảy múa xung quanh ô khi bạn cắt nó.
- Bây giờ chọn ô B3 và dán ô bạn đã cắt ở Bước 4. Bạn có thể thực hiện việc này bằng cách sử dụng Control + V.
- Bây giờ, chọn ô D5 (nơi dán ô B3 ở Bước 3) và cắt nó bằng Control + X.
- Dán cái này vào ô B4.
Mặc dù quá trình này có thể trông giống như một quá trình dài với nhiều bước nhưng sẽ không quá khó nếu bạn hiểu được quy trình.
Sử dụng VBA (Hoán đổi các ô không liền kề)
Bạn cũng có thể sử dụng mã VBA đơn giản để hoán đổi hai ô.
Vì VBA yêu cầu một số thiết lập nên phương pháp này sẽ chỉ có ý nghĩa khi bạn phải thực hiện việc này cho nhiều trang tính khác nhau hoặc bạn cần thực hiện việc này thường xuyên để có thể tạo mã một lần và sau đó sử dụng lại nhiều lần.
Dưới đây là mã VBA sẽ trao đổi
‘Code developed by Sumit Bansal from https://trumpexcel.com
Sub SwapCells()
Dim temp As Variant
Dim Cell1 As Range
Dim Cell2 As Range
‘Define the cell ranges
Set Cell1 = Range(“B3”)
Set Cell2 = Range(“B4”)
‘Swap values using a temporary variable
temp = Cell1.Value
Cell1.Value = Cell2.Value
Cell2.Value = temp
End Sub
Ở trên tạo một vị trí tạm thời (sử dụng biến tạm thời) và lưu trữ các giá trị của ô đầu tiên ở vị trí này. Sau đó, nó sao chép ô thứ hai lên ô đầu tiên rồi sử dụng giá trị trong biến tạm thời để dán vào ô thứ hai.
Mã VBA tuân theo logic tương tự như mã trong phương pháp thứ hai đã đề cập trong bài viết này (sử dụng Cut Paste).
Đặt mã VBA này ở đâu?
Bạn sẽ phải đặt mã này vào trình soạn thảo Visual Basic , đây là phần lập trình phía sau của Excel.
Thực hiện theo các bước dưới đây để thực hiện việc này:
- Giữ phím ALT rồi nhấn phím F11. Điều này sẽ mở trình soạn thảo VB. Bạn cũng có thể nhấp vào tab Nhà phát triển và sau đó nhấp vào biểu tượng Visual Basic.
- Trong trình soạn thảo VB mở ra, nhấp vào tùy chọn Insert trong menu rồi nhấp vào Mô-đun. Thao tác này sẽ chèn một mô-đun mới nơi chúng ta sẽ sao chép và dán mã VBA ở trên.
- Sao chép và dán mã VBA ở trên vào cửa sổ mã mô-đun.
- Lưu mã bằng Control + S (hoặc nhấp vào biểu tượng lưu trên thanh công cụ).
Bây giờ mã đã có trong trình soạn thảo VB, bạn có thể chạy nó để mua các ô được chỉ định trong mã.
Làm thế nào để chạy mã này?
Để chạy mã macro VBA, hãy làm theo các bước dưới đây:
- Giữ phím ALT rồi nhấn phím F8. Thao tác này sẽ mở hộp thoại Macro. Ngoài ra, bạn cũng có thể nhấp vào tab Nhà phát triển trong ruy-băng rồi nhấp vào biểu tượng Macro
- Chọn tên macro mà bạn muốn chạy.
- Bấm vào nút Run.
Nếu bạn muốn tìm hiểu về một số cách khác để chạy macro, hãy nhấp vào đây để đọc bài viết chi tiết.
Dưới đây là một số điều quan trọng cần nhớ khi sử dụng mã macro VBA trong Excel:
- Nếu muốn sử dụng lại mã macro, bạn sẽ phải lưu tệp đó dưới dạng tệp hỗ trợ macro (có phần mở rộng tệp .XLSM)
- Những thay đổi được thực hiện bởi tập lệnh macro VBA là không thể đảo ngược được, vì vậy hãy đảm bảo bạn có bản sao lưu dữ liệu của mình phòng trường hợp bạn cần nó trong tương lai.
Vì vậy, đây là một số phương pháp bạn có thể sử dụng để hoán đổi nhanh các ô trong Excel.
Phương pháp dễ nhất và nhanh nhất là sử dụng kỹ thuật Shift + Mouse. Bạn cũng có thể sử dụng phương pháp cu-copy-paste cũ và truyền thống, hoạt động cho cả các ô liền kề và không liền kề.
Và nếu bạn thích VBA thực hiện việc này thì bạn có thể sử dụng mã đã cung cấp trong bài viết này.
Hy vọng bạn thấy hướng dẫn Excel này hữu ích.