Thủ Thuật
  • TOP Thủ Thuật
    • Thủ Thuật Internet
    • Thủ Thuật Máy Tính
    • Thủ Thuật Tiện Ích
    • Thủ Thuật Phần Mềm
  • Chia Sẻ Kiến Thức
    • Học Excel
    • Học Word
    • Học Power Point
  • Games
  • Kênh Công Nghệ
  • Facebook
  • WordPress
  • SEO
No Result
View All Result
Thủ Thuật
  • TOP Thủ Thuật
    • Thủ Thuật Internet
    • Thủ Thuật Máy Tính
    • Thủ Thuật Tiện Ích
    • Thủ Thuật Phần Mềm
  • Chia Sẻ Kiến Thức
    • Học Excel
    • Học Word
    • Học Power Point
  • Games
  • Kênh Công Nghệ
  • Facebook
  • WordPress
  • SEO
No Result
View All Result
Thủ Thuật
No Result
View All Result
Home Chia Sẻ Kiến Thức Học Excel

Hướng Dẫn Sử Dụng Hàm IF Trong Power Query: Từ Cơ Bản Đến Lập Trình M Nâng Cao

Hướng Dẫn Sử Dụng Hàm IF Trong Power Query: Từ Cơ Bản Đến Lập Trình M Nâng Cao
6k
SHARES
19.5k
VIEWS
Share on Facebook

Nội Dung Bài Viết

Toggle
  • Tại sao Logic IF trong Power Query lại khác biệt?
  • Chuẩn bị dữ liệu thực hành
  • Phương pháp 1: Sử dụng Conditional Column (Không cần viết mã)
    • Bước 1: Trích xuất thông tin Ngày trong tuần
    • Bước 2: Thiết lập Cột có điều kiện
    • Bước 3: Tính toán giá trị cuối cùng
  • Phương pháp 2: Sử dụng M Code (Custom Column)
    • Cấu trúc câu lệnh IF trong Power Query (Ngôn ngữ M)
    • Giải quyết Tình huống 1 bằng M Code
    • Giải quyết Tình huống 2: Logic phức tạp (AND/OR)
      • Cách 1: Sử dụng toán tử logic kết hợp
      • Cách 2: Sử dụng IF lồng nhau (Nested IF)
  • Kết luận

Trong hệ sinh thái Excel, hàm IF được xem là “xương sống” của mọi bảng tính, là công cụ đầu tiên mà bất kỳ ai làm quen với xử lý dữ liệu đều phải thành thạo. Tuy nhiên, khi chuyển đổi môi trường làm việc sang Power Query – công cụ trích xuất và biến đổi dữ liệu mạnh mẽ của Microsoft – nhiều người dùng Excel lâu năm thường cảm thấy lúng túng. Lý do đơn giản: Hàm IF trong Power Query hoạt động khác biệt hoàn toàn so với hàm IF truyền thống trong Excel.

Nếu bạn đang tìm cách áp dụng logic điều kiện (Conditional Logic) để làm sạch và xử lý dữ liệu lớn, bài viết này từ Thủ Thuật sẽ là cẩm nang toàn diện dành cho bạn. Chúng ta sẽ cùng khám phá hai phương pháp cốt lõi: sử dụng giao diện Conditional Column (dành cho người mới bắt đầu) và viết mã M Language (dành cho người dùng nâng cao) để xử lý các tình huống phức tạp.

Tại sao Logic IF trong Power Query lại khác biệt?

Trong Excel truyền thống, chúng ta quen thuộc với cấu trúc hàm: =IF(logical_test, value_if_true, value_if_false). Tuy nhiên, Power Query sử dụng ngôn ngữ công thức M, hoạt động dựa trên tư duy lập trình nhiều hơn.

Để thực hiện logic “Nếu… thì…”, bạn có hai lựa chọn:

  1. Conditional Column (Cột có điều kiện): Sử dụng giao diện đồ họa, không cần viết mã. Phù hợp cho các logic đơn giản.
  2. Custom Column với M Code: Viết lệnh trực tiếp. Phù hợp cho các logic phức tạp (kết hợp AND/OR, tính toán lồng nhau).

Chúng ta sẽ thực hành cả hai phương pháp này thông qua một bài toán thực tế dưới đây.

Chuẩn bị dữ liệu thực hành

Để bài hướng dẫn trực quan nhất, hãy giả định chúng ta có một bảng dữ liệu bán hàng. Bạn có thể tải dữ liệu vào Power Query bằng cách chọn vùng dữ liệu trong Excel và nhấn Data -> From Table/Range.

Xem thêm:  Hướng Dẫn In File Excel Chi Tiết Cho Người Mới Bắt Đầu

Bài toán đặt ra: Chúng ta cần tính toán giá trị đơn hàng mới dựa trên các quy tắc sau:

  • Tình huống 1 (Cơ bản): Nếu đơn hàng rơi vào Chủ Nhật, áp dụng mức phụ thu (Premium) tăng thêm 10%.
  • Tình huống 2 (Nâng cao): Nếu là Chủ Nhật, tăng 10% phụ thu, NHƯNG nếu sản phẩm là “Tiger” hoặc “Farmhouse Bloomer”, sẽ được giảm giá 5% (chồng chéo lên mức tăng giá).

Hướng Dẫn Sử Dụng Hàm IF Trong Power Query: Từ Cơ Bản Đến Lập Trình M Nâng CaoMinh họa: Dữ liệu mẫu chứa thông tin ngày tháng và loại sản phẩm.

Phương pháp 1: Sử dụng Conditional Column (Không cần viết mã)

Đây là cách tiếp cận nhanh nhất nếu bạn không muốn đụng đến các dòng code. Chúng ta sẽ giải quyết Tình huống 1 (Tăng 10% giá vào Chủ Nhật).

Bước 1: Trích xuất thông tin Ngày trong tuần

Dữ liệu gốc thường chỉ có ngày tháng (Date). Để Power Query hiểu đâu là Chủ Nhật, bạn cần tách tên thứ ra.

  1. Chọn cột Date.
  2. Trên thanh công cụ, chọn Add Column -> Date -> Day -> Day Name.

Trích xuất tên ngày trong tuần trong Power QueryTrích xuất tên ngày trong tuần trong Power Query

Bước 2: Thiết lập Cột có điều kiện

  1. Chọn Add Column -> Conditional Column.
  2. Hộp thoại xuất hiện, bạn điền các thông số như sau:
    • New column name: Đặt tên là “Sunday Premium”.
    • Column Name: Chọn cột Day Name vừa tạo.
    • Operator: Chọn Equals (Bằng).
    • Value: Nhập Sunday (lưu ý chính xác chữ hoa/thường).
    • Output: Nhập 1.1 (Tức là 110%).
    • Else: Nhập 1 (Giữ nguyên giá).

Thiết lập thông số cho Conditional ColumnThiết lập thông số cho Conditional Column

Lưu ý: Giao diện Conditional Column cung cấp nhiều toán tử so sánh hữu ích khác như:

  • Does not equal (Không bằng)
  • Begins/Ends with (Bắt đầu/Kết thúc với)
  • Contains (Chứa ký tự)

Nếu muốn thêm nhiều điều kiện (ví dụ: Thứ 7 tăng 5%, Chủ Nhật tăng 10%), bạn chỉ cần nhấn nút Add rule để thêm dòng điều kiện mới. Logic sẽ chạy từ trên xuống dưới; nếu điều kiện đầu tiên đúng, các điều kiện sau sẽ bị bỏ qua.

Thêm nhiều quy tắc trong Conditional ColumnThêm nhiều quy tắc trong Conditional Column

Bước 3: Tính toán giá trị cuối cùng

Sau khi có cột hệ số (1.1 hoặc 1), chúng ta tính giá cuối cùng.

  1. Chọn Add Column -> Custom Column.
  2. Nhập công thức: =[Value] * [Sunday Premium].

Tính toán giá trị cuối cùng bằng Custom ColumnTính toán giá trị cuối cùng bằng Custom Column

Đánh giá: Phương pháp này trực quan, dễ dùng nhưng hạn chế khi gặp logic phức tạp (như AND/OR kết hợp).

Phương pháp 2: Sử dụng M Code (Custom Column)

Khi yêu cầu xử lý dữ liệu trở nên phức tạp hơn (Tình huống 2), việc dùng giao diện click chuột sẽ trở nên cồng kềnh. Đây là lúc sức mạnh của ngôn ngữ M lên ngôi.

Xem thêm:  Xóa Định Dạng trong Excel: Hướng Dẫn Chi Tiết

Cấu trúc câu lệnh IF trong Power Query (Ngôn ngữ M)

Khác với Excel, cú pháp của M gần giống với ngôn ngữ nói tiếng Anh:

if [Điều kiện] then [Kết quả nếu đúng] else [Kết quả nếu sai]

Quy tắc vàng: Ngôn ngữ M phân biệt chữ hoa chữ thường (Case Sensitive).

  • Đúng: if, then, else, and, or.
  • Sai: IF, Then, Else, AND (Công thức sẽ báo lỗi ngay lập tức).

Giải quyết Tình huống 1 bằng M Code

Thay vì dùng Conditional Column, ta làm trực tiếp:

  1. Chọn Add Column -> Custom Column.
  2. Nhập công thức sau:
if [Day Name] = "Sunday" then [Value] * 1.1 else [Value]

Viết lệnh IF cơ bản trong Custom ColumnViết lệnh IF cơ bản trong Custom Column

Bạn sẽ thấy cú pháp này gọn gàng hơn nhiều so với việc tạo cột trung gian.

Giải quyết Tình huống 2: Logic phức tạp (AND/OR)

Yêu cầu:

  • Ngày là Chủ Nhật.
  • Sản phẩm là “Tiger” HOẶC “Farmhouse Bloomer”.
  • Kết quả: Tăng 10% (phí chủ nhật) nhưng giảm 5% (ưu đãi sản phẩm) -> Hệ số: 1.1 * 0.95.
  • Các trường hợp Chủ Nhật còn lại: Chỉ tăng 10%.
  • Ngày thường: Giữ nguyên giá.

Trong M Code, chúng ta sử dụng từ khóa and và or để kết nối các điều kiện. Dưới đây là 2 cách viết tối ưu:

Cách 1: Sử dụng toán tử logic kết hợp

Chúng ta gộp các điều kiện vào một dòng lệnh. Lưu ý sử dụng dấu ngoặc đơn () để phân tách thứ tự ưu tiên cho or.

if [Day Name] = "Sunday" and ([Product] = "Tiger" or [Product] = "Farmhouse Bloomer") 
then [Value] * 1.1 * 0.95
else if [Day Name] = "Sunday" 
then [Value] * 1.1
else [Value]

Logic IF kết hợp AND và OR trong Power QueryLogic IF kết hợp AND và OR trong Power Query

Cách 2: Sử dụng IF lồng nhau (Nested IF)

Cách này giúp logic tường minh hơn, dễ kiểm soát từng lớp điều kiện.

if [Day Name] = "Sunday" then
    if [Product] = "Tiger" or [Product] = "Farmhouse Bloomer" 
    then [Value] * 1.1 * 0.95
    else [Value] * 1.1
else [Value]

Sử dụng IF lồng nhau để xử lý điều kiện phức tạpSử dụng IF lồng nhau để xử lý điều kiện phức tạp

Giải thích:

  • Đầu tiên kiểm tra xem có phải “Sunday” không.
  • Nếu đúng là Sunday, tiếp tục kiểm tra tên sản phẩm.
  • Nếu không phải Sunday, trả về giá trị gốc ngay lập tức.

Kết luận

Việc chuyển đổi tư duy từ hàm Excel truyền thống sang câu lệnh if trong Power Query có thể gây bỡ ngỡ ban đầu, đặc biệt là quy tắc viết thường (if thay vì IF). Tuy nhiên, một khi đã nắm vững, bạn sẽ thấy Power Query mang lại khả năng kiểm soát dữ liệu vượt trội.

  • Sử dụng Conditional Column: Khi bạn cần xử lý nhanh, điều kiện đơn giản và không muốn gõ phím.
  • Sử dụng Custom Column (M Code): Khi bạn cần xử lý các logic đa tầng, kết hợp nhiều điều kiện and/or hoặc muốn tối ưu hóa các bước xử lý (tránh tạo cột thừa).

Hy vọng bài viết này giúp bạn tự tin hơn trong việc xử lý dữ liệu với Power Query. Hãy thực hành ngay với dữ liệu của bạn để ghi nhớ cú pháp nhé!


Nguồn tham khảo: Excel Off The Grid, Microsoft Learn.

Đánh Giá Bài Viết
Tuyết Nhi

Tuyết Nhi

Tôi là Tuyết Nhi - Nữ phóng viên trẻ đến từ Hà Nội. Với niềm đam mê công nghệ, khoa học kỹ thuật, tôi yêu thích và muốn chia sẻ đến mọi người những trải nghiệm, kinh nghiệm về các lĩnh vực công nghệ, kỹ thuật... Rất mong được quý độc giả đón nhận ❤️.

Related Posts

Cách Sắp Xếp Dữ Liệu Trong Excel Theo Nhiều Điều Kiện Đơn Giản, Chính Xác Nhất
Học Excel

Cách Sắp Xếp Dữ Liệu Trong Excel Theo Nhiều Điều Kiện Đơn Giản, Chính Xác Nhất

Cách khôi phục thứ tự dữ liệu ban đầu trong Excel sau khi Sort: Giải pháp an toàn tuyệt đối
Học Excel

Cách khôi phục thứ tự dữ liệu ban đầu trong Excel sau khi Sort: Giải pháp an toàn tuyệt đối

Hướng Dẫn Sử Dụng Hàm SUMIFS Trong Excel: Lập Báo Cáo Chi Phí Lương Tự Động Chi Tiết
Học Excel

Hướng Dẫn Sử Dụng Hàm SUMIFS Trong Excel: Lập Báo Cáo Chi Phí Lương Tự Động Chi Tiết

Hướng Dẫn Sử Dụng Hàm COUNTIF Trong Excel: Thủ Thuật Đếm Ký Tự Và Tên Trùng Lặp
Học Excel

Hướng Dẫn Sử Dụng Hàm COUNTIF Trong Excel: Thủ Thuật Đếm Ký Tự Và Tên Trùng Lặp

Discussion about this post

Trending.

Tải Hills of Steel MOD APK v8.2.0 (Vô Hạn Tiền, Kim Cương)

Tải Hills of Steel MOD APK v8.2.0 (Vô Hạn Tiền, Kim Cương)

Tải Game Bida 3D Offline Carom3D Cho Máy Tính

Tải Game Bida 3D Offline Carom3D Cho Máy Tính

Khám Phá Thế Giới 3D Cùng Super Bear Adventure MOD APK

Khám Phá Thế Giới 3D Cùng Super Bear Adventure MOD APK

Quân Đoàn Slim (Slime Legion) MOD APK v3.2.1: Trải Nghiệm Game Thủ Thành Roguelike Cực Cuốn

Quân Đoàn Slim (Slime Legion) MOD APK v3.2.1: Trải Nghiệm Game Thủ Thành Roguelike Cực Cuốn

Xóa Khoảng Trắng Thừa Trong Word Đơn Giản

Xóa Khoảng Trắng Thừa Trong Word Đơn Giản

Giới Thiệu

Thủ Thuật

➤ Website đang trong quá trình thử nghiệm AI biên tập, mọi nội dung trên website chúng tôi không chịu trách nhiệm. Bạn hãy cân nhắc thêm khi tham khảo bài viết, xin cảm ơn!

Chuyên Mục

➤ TOP Thủ Thuật

➤ Chia Sẻ Kiến Thức

➤ Kênh Công Nghệ

➤ SEO

➤ Games

Liên Kết

➤ Ketquaxskt.com

➤ TOP Restaurants

➤

➤

➤

Liên Hệ

➤ TP. Hải Phòng, Việt Nam

➤ 0931. 910. JQK

➤ Email: [email protected]

Website này cũng cần quảng cáo, không có tiền thì viết bài làm sao  ” Đen Vâu – MTP ”

DMCA.com Protection Status

© 2025 Thủ Thuật - Website chia sẻ kiến thức công nghệ hàng đầu Việt Nam

No Result
View All Result
  • TOP Thủ Thuật
    • Thủ Thuật Internet
    • Thủ Thuật Máy Tính
    • Thủ Thuật Tiện Ích
    • Thủ Thuật Phần Mềm
  • Chia Sẻ Kiến Thức
    • Học Excel
    • Học Word
    • Học Power Point
  • Games
  • Kênh Công Nghệ
  • Facebook
  • WordPress
  • SEO

© 2025 Thủ Thuật - Website chia sẻ kiến thức công nghệ hàng đầu Việt Nam