Ngôn ngữ công thức M

Power Query nâng cao trong Excel

Lyndsay Girard

Performance Analytics Consultant

Trình soạn thảo nâng cao

  • Viết bằng ngôn ngữ công thức M (M code)
    • Phân biệt chữ hoa/thường
  • Biểu thức let có hai phần:
    • Mệnh đề "let" và "in"
    • Danh sách tên biến hoặc tên bước, cách nhau bằng dấu phẩy
      • Mỗi bước xây trên bước trước bằng cách tham chiếu tên của nó
    • Bước sau mệnh đề "in" là đầu ra truy vấn hiển thị
let
    Source = ""
in
    Source
Power Query nâng cao trong Excel

Trình soạn thảo nâng cao

let
    MyTable = Table.FromRecords({
    [ID = 1, Name = "A", Result = 10],
    [ID = 2, Name = "B", Result = 5]})
in
    MyTable

Biểu thức let với 1 bước

Power Query nâng cao trong Excel

Trình soạn thảo nâng cao

let
    MyTable = Table.FromRecords({
    [ID = 1, Name = "A", Result = 10],
    [ID = 2, Name = "B", Result = 5]}),
    #"Sorted Rows" = Table.Sort(MyTable,{{"Result", Order.Ascending}})
in
    #"Sorted Rows"

Biểu thức let với 2 bước

Power Query nâng cao trong Excel

Trình soạn thảo nâng cao

let
    MyTable = Table.FromRecords({
    [ID = 1, Name = "A", Result = 10],
    [ID = 2, Name = "B", Result = 5]}),
    #"Sort" = Table.Sort(MyTable,{{"Result", Order.Ascending}}),
    #"Lower" = Table.TransformColumns(#"Sort",{{"Name", Text.Lower, type text}})
in
    #"Lower"

Biểu thức let với 3 bước

Power Query nâng cao trong Excel

Kiểu giá trị

Nguyên thủy

  • Giá trị đơn (ví dụ: số, logic, văn bản hoặc null)
    [ID = 1, Name = "A"]
    

Cấu trúc

  • Danh sách
  • Bản ghi
  • Bảng
  • Hàm
Power Query nâng cao trong Excel

Kiểu giá trị có cấu trúc

Danh sách:

  • Dãy có thứ tự, bắt đầu từ 0, một cột giá trị
    List = {1,2,3}
    

Bản ghi:

  • Cấu trúc 1 hàng, nhiều cột
    Record = [Column1=1,Column2=2]
    

Bảng:

  • Nhiều hàng và nhiều cột kết hợp
    Table = #table({"Column A","Column B"},
          {{1,10},{2,20}})
    
Power Query nâng cao trong Excel

Hàm dựng sẵn của M

Hàm:

  • Giá trị, khi gọi với đối số, sẽ tạo ra giá trị mới.
  • Hàm bảng
  • Hàm danh sách
  • Hàm số
  • Hàm bản ghi
  • Hàm ngày
  • Hàm thời gian
  • Hàm khoảng thời lượng
  • ... còn nhiều nữa!
1 https://learn.microsoft.com/en-us/powerquery-m/power-query-m-function-reference
Power Query nâng cao trong Excel

Hàm tùy chỉnh

  • Tính toán phức tạp
  • Tái sử dụng
  • Tham số hóa
  • Tối ưu hiệu năng

 

  Cú pháp hàm tùy chỉnh:

= (Variable as Data Type, Variable as Data Type) => (Output Expression)
Power Query nâng cao trong Excel

Hàm tùy chỉnh

Ví dụ hàm tùy chỉnh đơn giản:

let
    MyFunction = (x) => x + 1
in
    MyFunction(10)

     

Ch3_simple_custom_function.png

Power Query nâng cao trong Excel

Tham số truy vấn

  • Tham số truyền động giá trị vào truy vấn
    • Giúp truy vấn linh hoạt và tái sử dụng hơn
      • Bộ lọc động
      • Hàm tùy chỉnh

Bàn tay điều chỉnh các thanh trượt, thay đổi cài đặt ứng dụng trên màn hình. Tùy chỉnh giao diện người dùng với công tắc bật/tắt

Power Query nâng cao trong Excel

Hãy luyện tập!

Power Query nâng cao trong Excel

Preparing Video For Download...