Trong bài viết này, UniTrain sẽ hướng dẫn bạn cách tạo các công thức trong Power Query. Để tạo công thức Power Query trong Excel, bạn có thể sử dụng thanh công thức Query Editor hoặc Advanced Editor. Query Editor cho phép người dùng tạo truy vấn dữ liệu và công thức trong Power Query. Ngôn ngữ được sử dụng để tạo các công thức này là Power Query Formula Language. Chúng ta sẽ tìm hiểu cách tạo công thức đơn giản và công thức nâng cao nhé.

Tạo công thức đơn giản trong Power Query

Đối với công thức đơn giản, bạn hãy chuyển đổi một giá trị văn bản thành kiểu chữ thích hợp bằng cách dùng công thức: Text.Proper(). Các bước thực hiện: 

Bước 1: Trong thanh POWER QUERY, chọn From Other Sources > chọn Blank Query.

Power Query Ribbon

Bước 2: Trong thanh công thức Query Editor, hãy nhập: =Text.Proper(“text value”) và nhấn Enter hoặc chọn biểu tượng Enter.

Formula Editor

Bước 3: Power Query sẽ hiển thị kết quả trong ngăn kết quả công thức.

Bước 4: Để xem kết quả trong trang tính Excel, hãy chọn Close & Load.

Kết quả sẽ hiển thị như sau:

Text.Proper

Tạo công thức nâng cao trong Power Query

Đối với thao tác tạo công thức nâng cao, chúng ta hãy chuyển đổi văn bản trong một cột thành kiểu chữ thích hợp bằng cách kết hợp nhiều công thức. Bạn có thể sử dụng Power Query Formula Language để kết hợp nhiều công thức thành các bước truy vấn có kết quả là tập dữ liệu. Kết quả có thể được nhập vào một trang tính Excel.

Ví dụ, bạn có một bảng Excel chứa các tên sản phẩm mà bạn muốn chuyển thành kiểu chữ thích hợp.

Trước

Và chuyển đổi thành bảng như hình dưới:

Sau

Hãy xem qua các bước công thức truy vấn để thay đổi bảng ban đầu sao cho các giá trị trong cột ProductName (tên sản phẩm) có kiểu chữ thích hợp.

Ví dụ về truy vấn nâng cao bằng Advanced Editor.

Để làm sạch bảng ban đầu, hãy dùng Advanced Editor để tạo các bước công thức truy vấn. Khi tạo công thức truy vấn nâng cao, hãy thực hiện từng bước sau:

1. Tạo một chuỗi các bước công thức truy vấn bắt đầu bằng câu lệnh Let. Trong Power Query Formula Language có phân biệt chữ hoa, chữ thường.

2. Mỗi bước công thức truy vấn được tạo dựa trên bước trước đó bằng cách tham chiếu đến từng bước.

3. Đưa ra một bước công thức truy vấn bằng câu lệnh in. Thông thường, bước truy vấn cuối cùng được dùng làm kết quả trong tập dữ liệu cuối cùng.

Cách thao tác:

Bước 1: Mở Advanced Editor
1.1. Trong thanh POWER QUERY, chọn From Other Sources > chọn Blank Query.

1.2. Trong Query Editor, chọn Advanced Editor. 

Advanced Editor

1.3. Hộp thoại Advanced Editor hiển thị.

Advanced Editor2

Bước 2: Xác định nguồn gốc

Trong Advanced Editor: 

2.1. Sử dụng câu lệnh let gán Source = Excel.CurrentWorkbook(). Thao tác này sẽ sử dụng bảng Excel làm nguồn dữ liệu.

2.2. Gán Source cho kết quả in.

let Source =
Excel.CurrentWorkbook(){[Name="Orders"]}[Content]
in Source

2.3. Truy vấn nâng cao sẽ hiển thị trong Advanced Editor như hình dưới:

Advanced Editor3

2.4. Để xem kết quả trong một trang tính:

– Chọn Done.

– Trong Query Editor, chọn Close & Load.

Step 1 - Advanced Editor

Kết quả sẽ hiển thị như hình dưới:

Bước 1 - Kết quả

Bước 3: Thay đổi hàng đầu tiên thành tiêu đề

Để chuyển đổi các giá trị trong cột ProductName (tên sản phẩm) thành kiểu chữ thích hợp, trước tiên bạn cần chỉnh hàng đầu tiên thành tiêu đề cột. Bạn thực hiện điều này trong Advanced Editor:

3.1. Thêm #”First Row as Header” = Table.PromoteHeaders() vào các bước công thức truy vấn và tham chiếu đến Source.

3.2. Gán #”First Row as Header” cho kết quả in.

let
    Source = Excel.CurrentWorkbook(){[Name="Orders"]}[Content],
    #"First Row as Header" = Table.PromoteHeaders(Source)
in
    #"First Row as Header"

Kết quả hiển thị như sau:

Step 3 - Result

Bước 4: Thay đổi mỗi giá trị trong một cột thành kiểu chữ thích hợp

Để chuyển đổi mỗi giá trị trong cột ProductName (tên sản phẩm) thành kiểu chữ thích hợp, bạn dùng Table.TransformColumns() và tham chiếu đến bước công thức truy vấn “First Row as Header”. Thao tác này được làm trong Advanced Editor:

4.1. Thêm công thức #”Capitalized Each Word” = Table.TransformColumns() vào các bước công thức truy vấn và tham chiếu đến #”First Row as Header” làm nguồn dữ liệu.

4.2. Gán #”Capitalized Each Word” cho kết quả in.

let
    Source = Excel.CurrentWorkbook(){[Name="Orders"]}[Content],
    #"First Row as Header" = Table.PromoteHeaders(Source),
    #"Capitalized Each Word" = Table.TransformColumns(#"First Row as Header",{{"ProductName", Text.Proper}})
in
    #"Capitalized Each Word"

Kết quả cuối cùng sẽ thay đổi mỗi giá trị trong cột ProductName (tên sản phẩm) thành kiểu chữ thích hợp (như hình dưới):

Bước 4 - Kết quả

Nguồn: Microsoft

Xem thêm

Khóa học Advanced Power Query

Khóa học Tổ chức và quản lý dữ liệu báo cáo trong Excel 

Cách thêm cột có điều kiện trong Power Query

Giới thiệu giao diện Power Query từ A-Z

Hướng dẫn Unpivot Columns trong Power Query