Excel là một trong những công cụ mạnh mẽ nhất để xử lý dữ liệu, và việc sắp xếp, di chuyển cột là một trong những thao tác cơ bản nhưng không kém phần quan trọng. Khi làm việc với bảng tính lớn, bạn có thể gặp phải tình huống cần đổi vị trí các cột để dữ liệu trở nên logic hơn, dễ đọc hơn hoặc để chuẩn bị cho các bước xử lý tiếp theo. Bài viết dưới đây sẽ cung cấp cho bạn một hướng dẫn chi tiết, toàn diện về cách di chuyển cột trong Excel, bao gồm các phương pháp nhanh, cách sử dụng phím tắt, công cụ kéo thả, cũng như các thủ thuật nâng cao cho người dùng chuyên nghiệp.
Có thể bạn quan tâm: Cách Hiện Cột Bị Ẩn Trong Excel: Hướng Dẫn Chi Tiết Từ Cơ Bản Đến Nâng Cao
1. Tại Sao Việc Di Chuyển Cột Lại Quan Trọng?
1.1. Tối ưu hoá bố cục dữ liệu
- Khi các cột được sắp xếp hợp lý, người dùng có thể nhanh chóng nhận ra mối quan hệ giữa các biến số.
- Giúp giảm thời gian tìm kiếm và tăng hiệu suất làm việc.
1.2. Chuẩn bị cho việc phân tích
- Nhiều công cụ phân tích (PivotTable, Power Query, Power BI) yêu cầu dữ liệu đầu vào có cấu trúc nhất định.
- Việc di chuyển cột giúp dữ liệu phù hợp với yêu cầu đầu vào của các công cụ này.
1.3. Đảm bảo tính nhất quán trong báo cáo
- Khi tạo báo cáo định kỳ, việc duy trì một mẫu bố cục cố định giúp đồng nghiệp dễ dàng đọc và so sánh dữ liệu.
Có thể bạn quan tâm: Gộp Hàng Trong Excel 2026: Hướng Dẫn Chi Tiết Từ Cơ Bản Đến Nâng Cao
2. Các Phương Pháp Di Chuyển Cột Cơ Bản
2.1. Sử Dụng Chuột Kéo Thả (Drag & Drop)
- Chọn cột cần di chuyển
Đặt con trỏ chuột lên tiêu đề cột (ví dụ: “A”, “B”, “C”…) cho đến khi con trỏ chuyển thành mũi tên đen.
Kéo cột
Nhấn giữ Left Mouse Button, kéo cột sang vị trí mới. Khi di chuyển, một đường viền dọc màu đen sẽ xuất hiện để chỉ vị trí chèn.
Thả cột
- Nhả chuột ở vị trí mong muốn. Cột sẽ được chèn vào vị trí mới, các cột trung gian sẽ dịch chuyển sang phải hoặc trái tùy theo hướng di chuyển.
Lưu ý: Nếu muốn di chuyển cột mà không thay đổi vị trí của các cột khác, hãy giữ phím Shift trong khi kéo thả. Excel sẽ chèn cột vào vị trí mới và đẩy các cột hiện tại sang phải.
2.2. Sử Dụng Phím Tắt
| Hành động | Phím tắt (Windows) | Phím tắt (Mac) |
|---|---|---|
| Cắt cột | Ctrl + X | ⌘ + X |
| Dán cột | Ctrl + V | ⌘ + V |
| Chọn cột | Ctrl + Space | ⌃ + Space |
Bước thực hiện:
1. Chọn toàn bộ cột bằng Ctrl + Space.
2. Nhấn Ctrl + X để cắt.
3. Di chuyển con trỏ tới tiêu đề cột đích (cột bên trái nơi bạn muốn chèn).
4. Nhấn Ctrl + V để dán.
Khi dán, cột đã cắt sẽ được chèn vào vị trí mới, và các cột hiện tại sẽ dịch chuyển sang phải.
2.3. Sử Dụng Lệnh “Insert Cut Cells”
- Chọn cột cần di chuyển.
- Nhấn Ctrl + X (cắt).
- Nhấp chuột phải vào tiêu đề cột đích.
- Chọn Insert Cut Cells từ menu ngữ cảnh.
Cách này tương tự như kéo thả nhưng cho phép bạn di chuyển cột tới vị trí không liền kề một cách nhanh chóng.
Có thể bạn quan tâm: Cách Xuất Dữ Liệu Google Forms Ra Excel: Hướng Dẫn Chi Tiết Từ A → Z
3. Di Chuyển Nhiều Cột Cùng Lúc
3.1. Chọn Nhiều Cột
- Kéo chuột: Nhấn và kéo từ tiêu đề cột đầu tiên đến cột cuối cùng.
- Sử dụng Shift: Nhấn Shift, sau đó nhấp vào tiêu đề cột đầu và cuối.
- Sử dụng Ctrl: Nhấn Ctrl và nhấp vào các tiêu đề cột không liên tiếp.
3.2. Di chuyển
Sau khi chọn, thực hiện các bước cắt/dán hoặc kéo thả như trong phần 2. Lưu ý rằng khi di chuyển nhiều cột, Excel sẽ giữ nguyên thứ tự của chúng.
3.3. Ví dụ Thực Tế
Giả sử bạn có bảng dữ liệu:
| A | B | C | D | E |
|---|---|---|---|---|
| ID | Tên | Tuổi | Giới tính | Lương |
Nếu muốn đưa cột “Lương” (E) sang sau cột “Tên” (B), thực hiện:
1. Chọn cột E → Ctrl + X.
2. Chọn tiêu đề cột B → Right-click → Insert Cut Cells.
3. Kết quả sẽ là: A, B (Tên), E (Lương), C (Tuổi), D (Giới tính).
4. Di Chuyển Cột Trong Bảng Động (Table)
Khi dữ liệu được định dạng dưới dạng Table (Ctrl + T), việc di chuyển cột có một số điểm cần lưu ý:
4.1. Định Dạng Table Tự Động Cập Nhật
- Khi bạn kéo cột trong Table, Excel sẽ tự động cập nhật các công thức, định dạng có liên quan.
- Tên cột trong Structured References sẽ được giữ nguyên, giúp công thức vẫn hoạt động.
4.2. Thực Hiện
- Chọn tiêu đề cột trong Table.
- Kéo thả tới vị trí mới.
- Kiểm tra lại các công thức để chắc chắn không có lỗi.
Mẹo: Nếu bạn muốn giữ nguyên vị trí cột trong Table nhưng chỉ thay đổi vị trí hiển thị, hãy sao chép cột ra ngoài Table, di chuyển, sau đó đưa lại vào Table. Điều này giúp tránh việc Table tự động điều chỉnh cấu trúc.
5. Di Chuyển Cột Bằng VBA (Macro)
Đối với người dùng muốn tự động hoá quy trình, VBA là một công cụ mạnh mẽ. Dưới đây là một số macro mẫu.

Có thể bạn quan tâm: Hiện Đường Lưới Trong Excel: Hướng Dẫn Chi Tiết Từ Cơ Bản Đến Nâng Cao
5.1. Macro Di Chuyển Cột Đơn Giản
Sub MoveColumn() Dim ws As Worksheet Set ws = ThisWorkbook.Sheets("Sheet1") ' Di chuyển cột E (5) tới vị trí sau cột B (2) ws.Columns(5).Cut ws.Columns(3).Insert Shift:=xlToRight
End Sub
Columns(5).Cutcắt cột E.Columns(3).Insertchèn cột đã cắt vào sau cột B (vị trí 3).
5.2. Macro Di Chuyển Nhiều Cột
Sub MoveMultipleColumns() Dim ws As Worksheet Set ws = ActiveSheet ' Chọn cột C, D, E (3-5) ws.Range(ws.Columns(3), ws.Columns(5)).Cut ' Chèn vào vị trí sau cột G (7) ws.Columns(8).Insert Shift:=xlToRight
End Sub
5.3. Macro Tự Động Dựa Trên Tên Cột
Sub MoveColumnByHeader() Dim ws As Worksheet Dim srcHeader As String, destHeader As String Dim srcCol As Long, destCol As Long srcHeader = "Lương" destHeader = "Tên" Set ws = ThisWorkbook.Sheets("Data") srcCol = Application.Match(srcHeader, ws.Rows(1), 0) destCol = Application.Match(destHeader, ws.Rows(1), 0) If Not IsError(srcCol) And Not IsError(destCol) Then ws.Columns(srcCol).Cut ws.Columns(destCol + 1).Insert Shift:=xlToRight End If
End Sub
- Sử dụng
Application.Matchđể tìm vị trí cột dựa trên tiêu đề. - Di chuyển cột “Lương” sau cột “Tên”.
5.4. Khi Nào Nên Dùng VBA?
- Khi bạn phải thực hiện di chuyển cột trên nhiều bảng tính hoặc nhiều workbook.
- Khi cần tích hợp di chuyển cột vào quy trình xử lý dữ liệu tự động (ví dụ: nhập dữ liệu, chuẩn hoá, xuất báo cáo).
6. Các Lưu Ý Khi Di Chuyển Cột
6.1. Kiểm Tra Công Thức
- Công thức tham chiếu cột (ví dụ:
=A2+B2) sẽ tự động cập nhật khi di chuyển cột. Tuy nhiên, nếu bạn dùng Absolute References ($A$2) hoặc Structured References trong Table, chúng sẽ không thay đổi. - Đảm bảo rằng các công thức không bị phá vỡ sau khi di chuyển.
6.2. Dữ Liệu Được Định Dạng Có Điều Kiện (Conditional Formatting)
- Khi di chuyển cột, quy tắc định dạng có điều kiện sẽ di chuyển cùng với cột, nhưng nếu quy tắc áp dụng cho một phạm vi cố định, bạn có thể cần chỉnh lại phạm vi.
6.3. Tham Chiếu Ngoài Workbook
- Nếu các công thức trong các workbook khác tham chiếu tới cột bạn đang di chuyển, các liên kết có thể bị lỗi. Kiểm tra lại các liên kết sau khi di chuyển.
6.4. Bảo Vệ Trang Tính (Sheet Protection)
- Khi sheet được bảo vệ, việc di chuyển cột có thể bị hạn chế. Bạn cần Unprotect sheet trước khi thực hiện, sau đó Protect lại.
ActiveSheet.Unprotect Password:="yourPassword"
' Thực hiện di chuyển cột ở đây
ActiveSheet.Protect Password:="yourPassword"
7. Thủ Thuật Nâng Cao
7.1. Sử Dụng Power Query Để Sắp Xếp Cột
Power Query (Get & Transform) cho phép bạn thay đổi thứ tự cột mà không ảnh hưởng đến dữ liệu gốc.
- Chọn dữ liệu → Data → From Table/Range.
- Trong Power Query Editor, kéo tiêu đề cột tới vị trí mong muốn.
- Close & Load để đưa dữ liệu trở lại Excel.
Ưu điểm:
– Thao tác không thay đổi dữ liệu gốc.
– Dễ dàng lưu lại trong các bước truy vấn để tái sử dụng.
7.2. Tạo Macro Ghi Nhớ Vị Trí Cột
Nếu bạn thường xuyên di chuyển cùng một cột, hãy tạo macro lưu vị trí hiện tại và khôi phục khi cần.
Dim colPos As Long Sub SaveColumnPosition() colPos = Application.Match("Lương", ActiveSheet.Rows(1), 0)
End Sub Sub RestoreColumnPosition() If Not IsEmpty(colPos) Then ActiveSheet.Columns(colPos).Cut ActiveSheet.Columns(3).Insert Shift:=xlToRight End If
End Sub
7.3. Sử Dụng Flash Fill Để Tạo Cột Mới Dựa Trên Thứ Tự
Nếu bạn muốn tạo một cột mới chứa dữ liệu từ các cột đã di chuyển, Flash Fill có thể tự động điền dữ liệu dựa trên mẫu.
- Nhập một vài giá trị mẫu trong cột mới.
- Nhấn Ctrl + E (Flash Fill) để Excel tự động điền phần còn lại.
7.4. Đổi Tên Cột Tự Động Khi Di Chuyển
Bạn có thể sử dụng VBA để tự động đổi tên cột dựa trên vị trí mới.
Sub RenameColumnAfterMove() Dim ws As Worksheet Set ws = ActiveSheet ws.Columns(4).Cells(1, 1).Value = "Ngày"
End Sub
8. Thực Hành: Bài Tập Di Chuyển Cột
Bài 1: Di chuyển cột “Ngày” sau cột “Tên”
- Chọn cột “Ngày”.
- Sử dụng Ctrl + X → Ctrl + V sau cột “Tên”.
- Kiểm tra công thức trong cột “Thời gian làm việc” (nếu có) để chắc chắn không lỗi.
Bài 2: Di chuyển ba cột “Giới tính”, “Tuổi”, “Lương” lên đầu bảng
- Chọn các cột bằng Shift + Click.
- Kéo thả tới vị trí đầu (trước cột “ID”).
- Xác nhận lại các công thức và định dạng có được cập nhật không.
Bài 3: Sử dụng VBA để di chuyển cột “Mã Sản Phẩm” sau cột “Tên Sản Phẩm”
Sub MoveProductCode() Dim ws As Worksheet Set ws = Worksheets("Sales") Dim src As Long, dest As Long src = Application.Match("Mã Sản Phẩm", ws.Rows(1), 0) dest = Application.Match("Tên Sản Phẩm", ws.Rows(1), 0) If Not IsError(src) And Not IsError(dest) Then ws.Columns(src).Cut ws.Columns(dest + 1).Insert Shift:=xlToRight End If
End Sub
9. Kết Luận
Việc di chuyển cột trong Excel không chỉ là một thao tác đơn giản mà còn là một kỹ năng quan trọng giúp bạn:
- Tối ưu hoá cấu trúc dữ liệu.
- Đảm bảo tính nhất quán trong báo cáo.
- Chuẩn bị dữ liệu cho các công cụ phân tích nâng cao.
- Tự động hoá quy trình thông qua VBA.
Bạn có thể sử dụng các phương pháp nhanh như kéo thả, phím tắt, hoặc các công cụ mạnh mẽ như Power Query và VBA tùy thuộc vào nhu cầu và mức độ phức tạp của công việc. Hãy thực hành các bước và thủ thuật đã nêu ở trên để trở thành người dùng Excel chuyên nghiệp, nhanh nhẹn và hiệu quả.
Nhắc nhở cuối cùng: Trước khi thực hiện bất kỳ thay đổi lớn nào trên dữ liệu quan trọng, luôn luôn sao lưu file của bạn hoặc tạo bản sao để tránh mất mát dữ liệu không mong muốn.
Chúc bạn thành công trong việc sắp xếp và tối ưu hoá bảng tính Excel của mình!

Tiến sĩ Lê Thống Nhất sinh năm 1955 tại Nghệ An, là nhà giáo, nhà báo và doanh nhân trong lĩnh vực giáo dục. Ông từng giảng dạy Toán học tại Trường THPT Chuyên Phan Bội Châu và đảm nhiệm nhiều vai trò trong ngành giáo dục, từ viết sách, biên soạn tài liệu đến sáng lập các dự án hỗ trợ học tập trực tuyến.
Ông là người sáng lập BigSchool – nền tảng giáo dục trực tuyến kết nối giáo viên và học sinh cả nước. Ngoài ra, ông còn nổi tiếng với vai trò tác giả, diễn giả truyền cảm hứng và khách mời trên nhiều chương trình truyền hình, trong đó có “Ai là triệu phú” trên truyền hình VTV.
Trong suốt sự nghiệp, Tiến sĩ Lê Thống Nhất đã nhận nhiều giải thưởng giáo dục và được biết đến như một người luôn đổi mới, ứng dụng công nghệ vào dạy và học, góp phần lan tỏa tri thức và niềm say mê học tập cho thế hệ trẻ.
