Tạo và gọi hàm tùy chỉnh

Áp dụng cho
Excel cho Microsoft 365 Excel 2019 Excel 2016 Excel 2013 Excel 2010

Hàm tùy chỉnh sử dụng ngôn ngữ công thức M, nhận tập hợp các giá trị đầu vào, rồi trả về một giá trị đầu ra duy nhất. Nếu bạn có lô-gic mà bạn muốn sử dụng lại nhiều lần hoặc áp dụng cùng một tập hợp các chuyển đổi cho một truy vấn hoặc giá trị khác, hãy cân nhắc việc tạo một hàm tùy chỉnh, rồi gọi hàm ở đâu và khi nào bạn cần. Có một vài cách để tạo hàm tùy chỉnh:

  • Sử dụng công Trình chỉnh sửa nâng cao để thêm câu lệnh let của riêng bạn và bắt đầu từ đầu.
  • Sử dụng lệnh Gọi Hàm Tùy chỉnh.
  • Có các cách khác để tạo hàm không được thảo luận trong chủ đề trợ giúp này, bao gồm các lệnh Tạo Hàm và Thêm dưới dạng Truy vấn. Để xem nội dung thảo luận chuyên sâu, hãy xem mục Tìm hiểu Power Query hàm M (docs.com) và Sử dụng hàm tùy chỉnh (docs.com).

Tạo và gọi một hàm tùy chỉnh đơn giản bằng công Trình chỉnh sửa nâng cao

Sau đây là một ví dụ đơn giản về một chức năng tùy chỉnh sau một truyền thống lập trình lâu đời.

  1. Để tạo truy vấn trống:

    Excel Chọn Dữ liệu>Lấy dữ liệu>từ các nguồn khác truy>vấn trống.

    Power Query chuột phải vào một vị trí trống trong ngăn Truy vấn ở bên trái, rồi chọn Truy vấn Mới Nguồn>> TrốngTruy vấn Trống.

  2. Trong ngăn Truy vấn ở bên trái, bấm đúp vào tên, rồi đổi tên truy vấn trống mới thành "HelloWorld".

  3. Chọn truy vấn mới, rồi chọn Trang>đầu Trình chỉnh sửa nâng cao.

  4. Thay thế mã bắt đầu mẫu bằng mã sau đây:
    let
         HelloWorld = () => ("Hello World")
    in
         HelloWorld

  5. Chọn Xong.

  6. Bạn đã thay đổi truy vấn, "HelloWorld", thành một hàm tùy chỉnh. Lưu ý biểu tượng hàm Biểu tượng hàm ở bên trái hàm.

  7. Để gọi hàm, hãy chọn hàm đó, rồi chọn Gọi trong Xem trước Dữ liệu.

    Gọi hàm tùy chỉnh HelloWorld

  8. Kết quả của hàm được hiển thị trong Bản xem trước dữ liệu và được thêm vào ngăn Truy vấn dưới dạng truy vấn có tên mặc định là Hàm Được gọi. Bạn có thể muốn đổi tên thành tên có ý nghĩa hơn, chẳng hạn như "HelloWorldResult".

  9. Chọn truy vấn đó, rồi chọn Đóng>Trang & Tải để xem kết quả trong trang tính.

Kết quả

Kết quả của HelloWorld trong trang tính

Tạo và gọi hàm tùy chỉnh có tham số với tham Trình chỉnh sửa nâng cao

Ví dụ sau đây cho thấy cách truyền tham số sang hàm tùy chỉnh để chuyển đổi số thập phân thành số thập lục phân.

  1. Để tạo truy vấn trống:

    Excel Chọn Dữ liệu>Lấy dữ liệu>từ các nguồn khác truy>vấn trống.

    Power Query chuột phải vào một vị trí trống trong ngăn Truy vấn ở bên trái, rồi chọn Truy vấn Mới Nguồn>> TrốngTruy vấn Trống.

  2. Trong ngăn Truy vấn ở bên trái, hãy đổi tên truy vấn trống mới thành "MyHex".

  3. Chọn truy vấn mới, rồi chọn Trang>đầu Trình chỉnh sửa nâng cao.

  4. Thay thế mã bắt đầu mẫu bằng mã sau đây:
    let
         MyHex = (parameter1) => Number.ToText(parameter1,"X")
    in
         MyHex

  5. Chọn Xong.

  6. Bạn đã thay đổi truy vấn , "MyHex", thành một hàm tùy chỉnh. Lưu ý biểu tượng hàm Biểu tượng hàm ở bên trái hàm.

  7. Để gọi hàm, hãy chọn hàm đó, rồi trong Bản xem trước Dữ liệu, nhập một số vào hộp tham số 1 , rồi chọn Gọi.
    Gọi hàm tùy chỉnh MyHex

  8. Kết quả của hàm được hiển thị trong Bản xem trước dữ liệu và được thêm vào ngăn Truy vấn dưới dạng truy vấn với tên mặc định là Hàm Được gọi. Bạn có thể muốn đổi tên thành tên có ý nghĩa hơn, chẳng hạn như "MyHexResult".

  9. Chọn truy vấn đó, rồi chọn Đóng>Trang & Tải để xem kết quả trong trang tính.

Kết quả

Kết quả của hàm MyHex trong một trang tính

Thêm cột bằng cách gọi hàm tùy chỉnh

Nếu bạn đã tạo hàm có ít nhất một tham số, bạn có thể gọi hàm đó là hàm tùy chỉnh để tạo cột mới và giá trị mới cho mỗi hàng trong bảng.

  1. Để mở truy vấn, hãy định vị truy vấn đã được tải từ Trình soạn thảo Power Query trước đó, chọn một ô trong dữ liệu, rồi chọn Sửa Truy>vấn. Để biết thêm thông tin, hãy xem mục Tạo, chỉnh sửa và tải truy vấn trong Excel (Power Query).

    Lưu ý Ví dụ: truy vấn của bạn cần có ít nhất một cột kiểu dữ liệu Số Nguyên.

  2. Tạo hàm tùy chỉnh "MyHex" như được giải thích trong mục Tạo và gọi hàm tùy chỉnh có tham số với tham Trình chỉnh sửa nâng cao.

  3. Trong truy vấn, chọn Thêm Cột>Gọi Hàm Tùy chỉnh. Hộp thoại Gọi Hàm Tùy chỉnh xuất hiện.

  4. Nhập tên cột mới, chẳng hạn như "HexConvert", trong hộp Tên cột mới.

  5. Chọn tên của một hàm tùy chỉnh được xác định trước từ danh sách thả xuống Truy vấn hàm. Trong ví dụ này, hãy chọn "MyHex".

  6. Vì hàm tùy chỉnh tham chiếu đến tham số, tham số hiện được hiển thị.

  7. Chọn một cột có kiểu dữ liệu Số Nguyên làm tham số cho hàm.

    Hộp thoại Gọi Hàm Tùy chỉnh

  8. Chọn OK.

Kết quả

Một cột mới được tạo hiển thị giá trị Thập lục phân của cột Số Nguyên mà bạn đã nhập dưới dạng tham số.

Cột giá trị MyHex mới trong một trang tính

Xem Thêm

Power Query trợ giúp về Excel

Tạo các công thức Power Query trong Excel

Tạo truy vấn tham số

Quản lý truy vấn

Tìm hiểu Power Query hàm M (docs.com)

Sử dụng các hàm tùy chỉnh (docs.com)