Skip to main content

Power Query Editor là gì? Cách mở và làm sạch dữ liệu

8 phút đọc

Power Query Editor là cửa sổ tạo và chỉnh sửa các bước kết nối, làm sạch, biến đổi dữ liệu trước khi đưa vào Excel hoặc mô hình Power BI. Trong Power BI Desktop, bạn mở bằng Home → Transform data; trong Excel, bạn có thể bắt đầu từ Data → Get Data. Điểm hữu ích là quy trình được lưu thành truy vấn để chạy lại khi làm mới dữ liệu.

Bạn không cần thuộc mã M ngay từ đầu. Hãy bắt đầu bằng một bảng bán hàng nhỏ, hiểu từng bước đã làm và biết kiểm tra tổng tiền trước khi dùng kết quả.

Power Query Editor nằm ở đâu trong quy trình báo cáo?

Giả sử cửa hàng xuất file giao dịch mỗi tuần. File có mã cửa hàng thừa khoảng trắng, ngày đang là văn bản và chưa có cột thành tiền. Editor là nơi bạn xử lý các vấn đề ấy trước khi dựng biểu đồ. Bạn mô tả cách biến đổi dữ liệu một lần, rồi áp dụng lại cho dữ liệu nguồn khi refresh.

Editor không phải nơi thiết kế trang báo cáo hay viết measure DAX. Sau khi dữ liệu sạch được nạp vào mô hình, bạn mới tạo quan hệ, phép tính và biểu đồ. Nếu đang phân vân công thức thuộc công đoạn nào, bài phân biệt DAX và M trong Power Query sẽ giúp bạn chọn đúng chỗ viết.

Cách mở trong Power BI Desktop và Excel

Trong Power BI Desktop

Ở thẻ Home, chọn Transform data để mở Editor. Khi đang kết nối một nguồn mới, bạn cũng có thể chọn Transform Data tại cửa sổ Navigator thay vì nạp ngay. Nếu bảng đã được nạp, mở lại Editor và chọn truy vấn cần sửa trong danh sách Queries.

Trong Excel

Với Excel có Get & Transform, chọn một ô trong bảng rồi dùng Data → From Table/Range. Nếu dữ liệu chưa là Table, kiểm tra vùng được chọn và xác nhận dòng tiêu đề. Với truy vấn có sẵn, mở Data → Queries & Connections rồi chỉnh sửa truy vấn đó. Tên nút có thể khác theo ngôn ngữ và phiên bản.

Hướng dẫn dưới đây dùng thao tác trên bản desktop. Không nên tìm mọi nút trong một ảnh hướng dẫn Power Query Online, vì một số chế độ xem của bản online khác bản desktop.

Bốn vùng bạn cần hiểu trước khi bấm biến đổi

  • Ribbon: nơi chọn các thao tác như giữ cột, đổi kiểu, tách cột và thêm cột.
  • Queries: danh sách truy vấn; chọn đúng truy vấn trước khi thao tác để tránh sửa nhầm bảng.
  • Data Preview: bản xem trước kết quả ở bước đang chọn; đây không phải lưới để sửa từng ô như Excel.
  • Query Settings và Applied Steps: nơi xem tên truy vấn và chuỗi bước biến đổi đã tạo.

Khi chọn một bước trong Applied Steps, bạn xem trạng thái dữ liệu tại bước ấy. Bảng đang hiển thị vì vậy có thể khác kết quả cuối truy vấn. Muốn xem đầu ra hiện tại, chọn bước cuối trước khi đối soát.

Thực hành làm sạch bảng doanh thu cửa hàng

Dùng bộ dữ liệu giả lập dưới đây. Mỗi dòng là một giao dịch bán hàng, không phải tổng ngày. Đơn giá là số nguyên theo đồng Việt Nam; chưa có thuế, giảm giá hay hàng trả lại. Quy ước này giúp bạn biết cột ThanhTien trong ví dụ thực sự có nghĩa gì.

NgayMaCHSoLuongDonGia
01/10/2026 HN01 2150000
02/10/2026HN01380000
03/10/2026DN01 1200000

Bước 1: kiểm tra tiêu đề và giữ đúng cột

Đảm bảo bốn cột có đúng tên như bảng mẫu. Nếu file có dòng tên công ty phía trên, bỏ các dòng giới thiệu rồi mới đưa dòng tên trường lên làm tiêu đề. Đừng Promote Headers nhiều lần, vì một dòng giao dịch có thể trở thành tên cột.

Bước 2: làm sạch mã cửa hàng

Chọn MaCH, dùng Transform → Format → Trim để bỏ khoảng trắng đầu và cuối. Giữ mã ở kiểu Text, nhất là khi mã có số 0 đầu. Với dữ liệu thật, hãy thống nhất thêm cách viết hoa và ký tự phân cách trước khi ghép danh mục.

Bước 3: đổi kiểu dữ liệu có chủ đích

Đặt SoLuong và DonGia thành Whole Number cho ví dụ này. Với Ngay đang là văn bản ngày/tháng/năm, chọn Change Type → Using Locale, kiểu Date và locale Vietnamese (Vietnam). Nếu bước Changed Type tự sinh trước đó đã hiểu sai ngày, sửa hoặc bỏ bước ấy rồi chuyển lại từ dữ liệu văn bản ban đầu.

Các bước chuẩn bị dữ liệu gồm làm sạch bảng, chuẩn hóa kiểu và thêm cột tính toán
Thực hiện từng bước nhỏ để dễ xác định nơi dữ liệu bắt đầu sai.
Thực hiện từng bước nhỏ để dễ xác định nơi dữ liệu bắt đầu sai.

Bước 4: thêm cột thành tiền

Chọn Add Column → Custom Column, đặt tên ThanhTien và nhập [SoLuong] * [DonGia]. Sau đó đặt kiểu số phù hợp. Bạn đang tính trên từng dòng giao dịch; tổng doanh thu sẽ được tổng hợp từ các giá trị này.

Bước 5: kiểm tra kết quả rồi mới nạp

Kết quả mong đợi là 300.000, 240.000 và 200.000 đồng, tổng cộng 740.000 đồng. Có ba dòng giao dịch; mã HN01 xuất hiện hai lần là bình thường. Không dùng Remove Duplicates chỉ vì mã cửa hàng lặp, vì bạn có thể xóa mất giao dịch hợp lệ.

Mã M để bạn tự chạy và xem Applied Steps

Tạo Blank Query, mở Advanced Editor, thay nội dung bằng đoạn dưới và chọn Done. Dữ liệu được khai báo ngay trong mã nên bạn không cần tải file ngoài. Các tên bước ngắn giúp bạn chọn lần lượt để quan sát thay đổi.

let
    Source = #table(
        type table [Ngay = text, MaCH = text, SoLuong = text, DonGia = text],
        {
            {"01/10/2026", " HN01 ", "2", "150000"},
            {"02/10/2026", "HN01", "3", "80000"},
            {"03/10/2026", "DN01 ", "1", "200000"}
        }
    ),
    TrimCode = Table.TransformColumns(
        Source, {{"MaCH", Text.Trim, type text}}
    ),
    Typed = Table.TransformColumnTypes(
        TrimCode,
        {{"Ngay", type date}, {"SoLuong", Int64.Type}, {"DonGia", Int64.Type}},
        "vi-VN"
    ),
    AddAmount = Table.AddColumn(
        Typed, "ThanhTien", each [SoLuong] * [DonGia], Int64.Type
    )
in
    AddAmount

Chọn Source để xem dữ liệu thô, TrimCode để kiểm tra mã, Typed để kiểm tra ngày và số, rồi AddAmount để xem thành tiền. Trong M, mỗi bước sau tham chiếu kết quả bước trước. Bạn có thể đọc chuỗi này như một công thức nhiều chặng thay vì cố hiểu cả đoạn cùng lúc.

Bảng dữ liệu chưa chuẩn hóa chuyển thành bảng nhất quán với cột thành tiền
Ảnh minh họa cấu trúc trước và sau; số liệu đối soát nằm trong ví dụ và mã M.
Ảnh minh họa cấu trúc trước và sau; số liệu đối soát nằm trong ví dụ và mã M.

Sửa Applied Steps mà không làm hỏng chuỗi xử lý

Khi kết quả sai, quay về bước cuối còn đúng rồi xem bước ngay sau nó. Ví dụ ngày đổi sai từ Typed thì sửa cách chuyển kiểu ở đó. Không cần thêm nhiều bước thay thế ngày ở cuối để che lỗi phát sinh từ đầu.

Một số bước có biểu tượng bánh răng để mở lại thiết lập. Với bước không có, bạn có thể cần sửa công thức hoặc mã M. Trước khi xóa bước ở giữa, kiểm tra bước phía sau có dùng cột do nó tạo hay không. Nếu có, chuỗi có thể báo lỗi tham chiếu.

Khi đã làm sạch từng bảng và cần nối dữ liệu, hãy xem hướng dẫn chọn Merge hay Append trong Power Query. Việc hiểu mức chi tiết của bảng vẫn cần thiết dù Editor không báo lỗi.

Ba lỗi dễ bỏ qua trước khi Close & Apply

  • Nhìn preview rồi kết luận toàn bộ dữ liệu sạch: bật Column quality hoặc Column profile trong View. Profiling mặc định dựa trên 1.000 dòng đầu; chuyển sang toàn bộ tập dữ liệu khi cần kiểm tra đầy đủ và cân nhắc thời gian xử lý.
  • Xóa mọi dòng lỗi: kiểm tra giá trị gốc trước. Một dấu phân cách số hoặc locale sai có thể biến doanh thu hợp lệ thành lỗi chuyển kiểu.
  • Đổi tên cột nguồn mà quên truy vấn: bước chọn cột hoặc đổi kiểu có thể vẫn tham chiếu tên cũ. Kiểm tra cấu trúc file trước mỗi lần thay mẫu xuất dữ liệu.

Trong Power BI Desktop, dùng Close & Apply để áp dụng vào mô hình; trong Excel, dùng Close & Load để nạp kết quả. Với nguồn thực tế, thử thêm một dòng giao dịch vào nguồn rồi refresh và kiểm tra đầu ra. Ví dụ #table ở trên chỉ chạy lại dữ liệu cố định đã khai báo trong mã.

Câu hỏi thường gặp

Power Query Editor có sửa trực tiếp file nguồn không?

Các phép biến đổi thông thường tạo kết quả truy vấn để nạp vào nơi đích, không ghi đè từng ô trong file Excel nguồn. Bạn vẫn cần quản lý file nguồn và nơi nạp kết quả riêng biệt.

Có cần học M trước khi dùng Editor không?

Không cần cho các thao tác cơ bản. Bạn có thể dùng giao diện trước, sau đó đọc mã của những bước đã tạo. Học tham chiếu bước, kiểu dữ liệu và let…in sẽ giúp xử lý lỗi tốt hơn.

Vì sao chọn bước cũ thấy thiếu cột thành tiền?

Bản xem trước phản ánh bước đang chọn. Cột ThanhTien chỉ xuất hiện từ AddAmount trong ví dụ này. Chọn bước cuối để xem đầu ra hoàn chỉnh của truy vấn.

Refresh có tự cập nhật mọi loại báo cáo không?

Refresh chạy lại truy vấn theo cấu hình nguồn và môi trường đang dùng. Lịch làm mới trên dịch vụ còn phụ thuộc thông tin xác thực, khả năng truy cập nguồn và cấu hình liên quan; Editor không tự thiết lập tất cả các điều kiện đó.

Nếu bạn cần người kiểm tra quy trình làm sạch dữ liệu và triển khai báo cáo hoàn chỉnh, hãy xem báo giá làm Power BI trên SenData, rồi gửi cấu trúc dữ liệu cùng kết quả mong muốn để trao đổi phạm vi.

Sẵn sàng xây dựng dashboard Power BI?

Kết nối với freelancer Power BI phù hợp, xem báo cáo nhúng ngay trên trình duyệt và tải file .pbix về sau khi thanh toán.

Đào Ngọc Tú

Đào Ngọc Tú

Freelancer Power BI

Cộng tác viên chuyên gia tại SenData. Chia sẻ kiến thức về phát triển Power BI, trực quan hóa dữ liệu và best practice business intelligence.

Đọc tiếp

Quay lại tất cả bài viết
Power Query Editor là gì? Cách dùng cho người mới | SenData