Appheet là gì?

AppSheet là nền tảng phát triển ứng dụng di động không cần lập trình, giúp bạn tạo ứng dụng từ dữ liệu có sẵn mà không cần viết mã. Tương tự như Google Sheets hay Excel, AppSheet cũng yêu cầu sử dụng công thức để thực hiện các thao tác và logic trong ứng dụng.

Với hơn 120 hàm có sẵn, nền tảng này mang đến nhiều tính năng đa dạng. Tuy nhiên, qua hơn 4 năm làm việc với AppSheet trên nhiều dự án khác nhau, tôi nhận thấy chỉ khoảng 40 hàm được sử dụng thường xuyên, trong đó 15 hàm phổ biến nhất mang lại hiệu quả vượt trội.

Dưới đây là các nhóm hàm quan trọng mà tôi đã tổng hợp để bạn dễ dàng tìm hiểu và áp dụng cho dự án của mình.


NHÓM HÀM ĐIỀU KIỆN (CONDITIONAL)

Hàm IF()

Hàm này dùng để kiểm tra một điều kiện nào đó và trả về kết quả tương ứng. Cú pháp của hàm là:

IF(condition, then-value, else-value)

Trong đó, condition là biểu thức logic cần kiểm tra, then-value là giá trị trả về nếu condition đúng, else-value là giá trị trả về nếu condition sai. Ví dụ:

IF([Tuổi] >= 18, "Người lớn", "Trẻ em") 

Sẽ trả về kết quả là “Người lớn” nếu trường Tuổi có giá trị lớn hơn hoặc bằng 18, và trả về kết quả là “Trẻ em” nếu trường Tuổi có giá trị nhỏ hơn 18.

Bạn có thể sử dụng hàm này để xử lý các logic phức tạp và tạo ra các giá trị phù hợp cho các trường dữ liệu. Ví dụ: bạn có một bảng Sản phẩm với các trường Tên sản phẩm, Giá và Loại. Bạn muốn tạo ra một trường mới là Giảm giá, có giá trị là số tiền được giảm giá cho từng sản phẩm. Bạn có thể sử dụng công thức sau:

IF([Loại] = "Điện tử", [Giá] * 0.1, IF([Loại] = "Thời trang", [Giá] * 0.2, 0))

Kết quả sẽ là một số tiền được giảm giá tương ứng với từng loại sản phẩm. Ví dụ: nếu một sản phẩm có Loại là “Điện tử” và Giá là 1000, thì Giảm giá sẽ là 100. Nếu một sản phẩm có Loại là “Thời trang” và Giá là 500, thì Giảm giá sẽ là 100. Nếu một sản phẩm có Loại khác, thì Giảm giá sẽ là 0.


Hàm SWITCH()

Hàm SWITCH trong AppSheet cho phép bạn kiểm tra một giá trị cụ thể và trả về kết quả tương ứng dựa trên từng trường hợp đã được định nghĩa. Đây là cú pháp hữu ích để giảm bớt các cấu trúc điều kiện lồng ghép phức tạp như IF.

SWITCH(value, value1, result1, value2, result2, ..., default-result)

Trong đó, value là giá trị cần so sánh, value1, value2,… là các giá trị trong danh sách cần so sánh, result1, result2,… là các kết quả tương ứng với từng giá trị trong danh sách, default-result là kết quả mặc định nếu không có giá trị nào trong danh sách khớp với value. Ví dụ:

SWITCH([Màu], 
       "Đỏ", "Lửa", 
       "Xanh", "Cỏ", 
       "Vàng", "Nắng", 
       "Không biết")

Diễn giải hoạt động:

  • Nếu trường [Màu] có giá trị là "Đỏ", hàm sẽ trả về "Lửa".
  • Nếu [Màu] có giá trị là "Xanh", hàm sẽ trả về "Cỏ".
  • Nếu [Màu] có giá trị là "Vàng", hàm sẽ trả về "Nắng".
  • Nếu [Màu] có giá trị không khớp với bất kỳ trường hợp nào ở trên, hàm sẽ trả về "Không biết" (giá trị mặc định).

Ứng dụng thực tế:

Hàm này rất hữu ích để thay thế nhiều điều kiện IF, giúp mã đơn giản và dễ đọc hơn. Bạn có thể sử dụng nó để ánh xạ các giá trị từ một trường thành các nhãn cụ thể, danh mục, hoặc trạng thái.

SWITCH([Phòng ban], "Kinh doanh", [Lương] * 0.1, "Kỹ thuật", [Lương] * 0.05, "Hành chính", [Lương] * 0.03, 0)

Bạn có thể sử dụng hàm SWITCH kết hợp với phép tính để thiết lập mức thưởng cho từng phòng ban dựa trên mức lương của nhân viên. Dưới đây là ví dụ khác

SWITCH([Phòng ban], 
       "Kinh doanh", [Lương] * 0.1, 
       "Kỹ thuật", [Lương] * 0.05, 
       "Hành chính", [Lương] * 0.03, 
       0)

Diễn giải công thức:

  • Nếu phòng ban là "Kinh doanh": Thưởng = Lương * 10%
    Ví dụ: Lương = 2000 → Thưởng = 2000 * 0.1 = 200
  • Nếu phòng ban là "Kỹ thuật": Thưởng = Lương * 5%
    Ví dụ: Lương = 1500 → Thưởng = 1500 * 0.05 = 75
  • Nếu phòng ban là "Hành chính": Thưởng = Lương * 3%
    Ví dụ: Lương = 1000 → Thưởng = 1000 * 0.03 = 30
  • Nếu phòng ban khác: Thưởng = 0

Hàm IFS()

Hàm IFS dùng để kiểm tra nhiều điều kiện khác nhau và trả về kết quả đầu tiên thỏa mãn. Đây là lựa chọn thay thế cho nhiều hàm IF lồng nhau, giúp công thức gọn gàng và dễ hiểu hơn.

IFS(condition1, value1, [condition2, value2, ...])
  • condition1, condition2...: Các biểu thức logic cần kiểm tra.
  • value1, value2...: Các giá trị tương ứng được trả về khi điều kiện đúng.

Ví dụ: Hóa đơn và Ghi chú

IFS([Trạng thái] = "Đã thanh toán", 
    "Cảm ơn quý khách đã sử dụng dịch vụ của chúng tôi.", 
    [Trạng thái] = "Chưa thanh toán", 
    CONCATENATE("Quý khách vui lòng thanh toán ", [Tổng tiền], " trong vòng 7 ngày."), 
    [Trạng thái] = "Đã hủy", 
    "Hóa đơn này đã bị hủy và không còn hiệu lực.", 
    TRUE, 
    "Không có ghi chú.")

Diễn giải công thức:

  • Nếu [Trạng thái]"Đã thanh toán", Ghi chú sẽ là:
    "Cảm ơn quý khách đã sử dụng dịch vụ của chúng tôi."
  • Nếu [Trạng thái]"Chưa thanh toán"Tổng tiền là 500000, Ghi chú sẽ là:
    "Quý khách vui lòng thanh toán 500000 trong vòng 7 ngày."
  • Nếu [Trạng thái]"Đã hủy", Ghi chú sẽ là:
    "Hóa đơn này đã bị hủy và không còn hiệu lực."
  • Nếu không thỏa mãn các điều kiện trên, Ghi chú sẽ là:
    "Không có ghi chú."

Ứng dụng:

Hàm IFS rất hữu ích khi bạn cần phân loại nhiều trạng thái, giúp thay thế cho các chuỗi IF lồng ghép phức tạp. Công thức này đảm bảo tính trực quan và dễ bảo trì trong ứng dụng của bạn.


NHÓM HÀM TOÁN TỬ SO SÁNH


Hàm CONTAINS()

Hàm CONTAINS trong AppSheet dùng để kiểm tra xem một chuỗi văn bản có chứa chuỗi con cụ thể hay không và trả về giá trị TRUE hoặc FALSE.

Cú pháp:

CONTAINS(text, search-text)
  • text: Chuỗi văn bản cần kiểm tra.
  • search-text: Chuỗi văn bản muốn tìm kiếm bên trong text.

Ví dụ: Kiểm tra Mã sản phẩm có chứa chuỗi "SP"

Giả sử bạn có bảng Sản phẩm với các trường như Mã sản phẩm, Tên sản phẩm, và Giá. Bạn muốn tạo trường mới là "Có chứa SP", có giá trị TRUE nếu mã sản phẩm chứa chuỗi "SP", ngược lại là FALSE.

Công thức:

CONTAINS([Mã sản phẩm], "SP")

Diễn giải công thức:

  • Nếu Mã sản phẩm"SP123", kết quả sẽ là TRUE vì chuỗi "SP" xuất hiện trong mã sản phẩm.
  • Nếu Mã sản phẩm"ABC456", kết quả sẽ là FALSE vì chuỗi "SP" không xuất hiện.

Ứng dụng:

  • Kiểm tra trạng thái mã hàng: Tìm kiếm mã sản phẩm theo tiền tố nhất định.
  • Phân loại sản phẩm: Dễ dàng lọc các sản phẩm liên quan dựa trên mã hoặc thuộc tính.

Ví dụ này giúp bạn tự động phân loại sản phẩm theo mã, tránh các bước kiểm tra thủ công và cải thiện hiệu quả làm việc trong ứng dụng AppSheet.n phẩm có Mã sản phẩm là “ABC456”, thì Có chứa SP sẽ là FALSE.


Hàm ISBLANK()

Hàm này dùng để kiểm tra xem một giá trị có rỗng hay không. Cú pháp của hàm là:

ISBLANK(value)

Trong đó, value là giá trị cần kiểm tra xem có rỗng hay không. Ví dụ:

ISBLANK("") sẽ kiểm tra xem giá trị “” có rỗng hay không và trả về kết quả là TRUE.

Bạn có thể sử dụng hàm này để kiểm tra xem một giá trị có rỗng hay không cho các mục đích khác nhau. Ví dụ: bạn có một bảng Khách hàng với các trường Tên khách hàng, Địa chỉ, Số điện thoại và Email. Bạn muốn tạo ra một trường mới là Không có email, có giá trị là TRUE nếu Email rỗng, và FALSE nếu không. Bạn có thể sử dụng công thức sau:

ISBLANK([Email])

Kết quả sẽ là một giá trị logic tương ứng với việc Email rỗng hay không. Ví dụ: nếu một khách hàng có Email là “”, thì Không có email sẽ là TRUE. Nếu một khách hàng có Email là “abc@gmail.com”, thì Không có email sẽ là FALSE.

Hàm ISNOTBLANK()

Hàm này dùng để kiểm tra xem một giá trị có khác rỗng hay không. Cú pháp của hàm là:

ISNOTBLANK(value)

Trong đó, value là giá trị cần kiểm tra xem có khác rỗng hay không. Ví dụ:

ISNOTBLANK("") sẽ kiểm tra xem giá trị “” có khác rỗng hay không và trả về kết quả là FALSE.

Bạn có thể sử dụng hàm này để kiểm tra xem một giá trị có khác rỗng hay không cho các mục đích khác nhau. Ví dụ: bạn có một bảng Khách hàng với các trường Tên khách hàng, Địa chỉ, Số điện thoại và Email. Bạn muốn tạo ra một trường mới là Có email, có giá trị là TRUE nếu Email khác rỗng, và FALSE nếu không. Bạn có thể sử dụng công thức sau:

ISNOTBLANK([Email])

Kết quả sẽ là một giá trị logic tương ứng với việc Email khác rỗng hay không. Ví dụ: nếu một khách hàng có Email là “”, thì Có email sẽ là FALSE. Nếu một khách hàng có Email là “abc@gmail.com”, thì Có email sẽ là TRUE.

NHÓM HÀM NGÀY VÀ GIỜ

Hàm DATE()

Hàm này dùng để chuyển một giá trị ngày, ngày giờ hoặc thời gian thành một giá trị ngày. Cú pháp của hàm là:

DATE(when)

Trong đó, when là một giá trị ngày, ngày giờ hoặc thời gian. Ví dụ:

DATE("2021-10-23T10:15:00") sẽ trả về kết quả là “2021-10-23”.

Bạn có thể sử dụng hàm này để lấy ra phần ngày của một giá trị ngày giờ hoặc thời gian. Ví dụ: bạn có một bảng Lịch sử giao dịch với các trường Mã giao dịch, Ngày giờ giao dịch và Số tiền. Bạn muốn tạo ra một trường mới là Ngày giao dịch, có giá trị là phần ngày của Ngày giờ giao dịch. Bạn có thể sử dụng công thức sau:

DATE([Ngày giờ giao dịch])

Kết quả sẽ là một giá trị ngày tương ứng với Ngày giờ giao dịch. Ví dụ: nếu một giao dịch có Ngày giờ giao dịch là “2021-10-23T10:15:00”, thì Ngày giao dịch sẽ là “2021-10-23”.

Hàm DATETIME()

Hàm này dùng để chuyển một giá trị ngày, ngày giờ hoặc thời gian thành một giá trị ngày giờ. Cú pháp của hàm là:

DATETIME(when)

Trong đó, when là một giá trị ngày, ngày giờ hoặc thời gian. Ví dụ:

DATETIME("2021-10-23") sẽ trả về kết quả là “2021-10-23T00:00:00”.

Bạn có thể sử dụng hàm này để lấy ra phần ngày giờ của một giá trị ngày hoặc thời gian. Ví dụ: bạn có một bảng Lịch hẹn với các trường Tên khách hàng, Ngày hẹn và Giờ hẹn. Bạn muốn tạo ra một trường mới là Ngày giờ hẹn, có giá trị là sự kết hợp của Ngày hẹn và Giờ hẹn. Bạn có thể sử dụng công thức sau:

DATETIME(CONCATENATE([Ngày hẹn], "T", [Giờ hẹn]))

Kết quả sẽ là một giá trị ngày giờ tương ứng với Ngày hẹn và Giờ hẹn. Ví dụ: nếu một khách hàng có Ngày hẹn là “2021-10-23” và Giờ hẹn là “10:15:00”, thì Ngày giờ hẹn sẽ là “2021-10-23T10:15:00”.

Hàm NOW()

Hàm này dùng để lấy ra thời điểm hiện tại theo định dạng ngày giờ. Cú pháp của hàm là:

NOW()

Hàm này không cần tham số đầu vào. Ví dụ:

NOW() sẽ trả về kết quả là thời điểm hiện tại, ví dụ “2021-10-23T10:15:00”.

Bạn có thể sử dụng hàm này để lấy ra thời điểm hiện tại cho các mục đích khác nhau. Ví dụ: bạn có một bảng Đăng nhập với các trường Tên đăng nhập và Mật khẩu. Bạn muốn tạo ra một trường mới là Thời gian đăng nhập, có giá trị là thời điểm hiện tại khi người dùng đăng nhập vào ứng dụng. Bạn có thể sử dụng công thức sau:

NOW()

Kết quả sẽ là một giá trị ngày giờ tương ứng với thời điểm hiện tại khi người dùng đăng nhập vào ứng dụng. Ví dụ: nếu một người dùng có Tên đăng nhập là “admin” và Mật khẩu là “123456” đăng nhập vào ứng dụng vào lúc “2021-10-23T10:15:00”, thì Thời gian đăng nhập sẽ là “2021-10-23T10:15:00”.

NHÓM HÀM THÔNG TIN

Hàm CONTEXT()

Hàm này dùng để lấy ra một số thông tin về ngữ cảnh của ứng dụng, như loại thiết bị, tên người dùng, tên ứng dụng, tên bảng hoặc tên chế độ xem. Cú pháp của hàm là:

CONTEXT(type)

Trong đó, type là một giá trị ký tự chỉ ra loại thông tin cần lấy ra. Có các giá trị sau:

  • “Device”: trả về loại thiết bị đang chạy ứng dụng, có thể là “Browser”, “Phone” hoặc “Tablet”.
  • “Host”: trả về tên miền của máy chủ đang chạy ứng dụng, có thể là “appsheet.com”, “google.com” hoặc “office.com”.
  • “Locale”: trả về mã ngôn ngữ và vùng của thiết bị đang chạy ứng dụng, ví dụ “en-US” hoặc “vi-VN”.
  • “Location”: trả về vị trí hiện tại của thiết bị đang chạy ứng dụng, dưới dạng một giá trị LatLong.
  • “Platform”: trả về hệ điều hành của thiết bị đang chạy ứng dụng, có thể là “Android”, “iOS” hoặc “WebApp”.
  • “UserEmail”: trả về địa chỉ email của người dùng đang sử dụng ứng dụng, ví dụ “admin@gmail.com”.
  • “UserName”: trả về tên hiển thị của người dùng đang sử dụng ứng dụng, ví dụ “Admin”.
  • “View”: trả về tên của chế độ xem hiện tại trong ứng dụng, ví dụ “Danh sách sản phẩm”.
  • “ViewType”: trả về loại của chế độ xem hiện tại trong ứng dụng, có thể là “Table”, “Deck”, “Gallery”, “Detail”, “Form” hoặc “Dashboard”.

Ví dụ:

CONTEXT("Device") sẽ trả về kết quả là loại thiết bị đang chạy ứng dụng, ví dụ “Phone”.

Bạn có thể sử dụng hàm này để lấy ra các thông tin về ngữ cảnh của ứng dụng và sử dụng chúng cho các mục đích khác nhau. Ví dụ: bạn có một bảng Phản hồi khách hàng với các trường Tên khách hàng, Nội dung phản hồi và Thời gian phản hồi. Bạn muốn tạo ra một trường mới là Thông tin phản hồi, có giá trị là một chuỗi ký tự bao gồm các thông tin như loại thiết bị, tên người dùng và tên chế độ xem khi khách hàng gửi phản hồi. Bạn có thể sử dụng công thức sau:

CONCATENATE("Phản hồi được gửi từ ", CONTEXT("Device"), ", bởi ", CONTEXT("UserName"), ", qua ", CONTEXT("View"), ".")

Kết quả sẽ là một chuỗi ký tự bao gồm các thông tin về ngữ cảnh của ứng dụng khi khách hàng gửi phản hồi. Ví dụ: nếu một khách hàng có Tên khách hàng là “Nguyễn Văn A”, Nội dung phản hồi là “Ứng dụng rất tốt, tôi rất hài lòng.” và Thời gian phản hồi là “2021-10-23T10:15:00”, và khách hàng đó sử dụng ứng dụng trên điện thoại Android, có tên hiển thị là “Nguyễn Văn A” và gửi phản hồi qua chế độ xem Form, thì Thông tin phản hồi sẽ là “Phản hồi được gửi từ Phone, bởi Nguyễn Văn A, qua Form.”.

Hàm INPUT()

Hàm này dùng để tạo ra một trường nhập liệu cho người dùng nhập vào một giá trị. Cú pháp của hàm là:

INPUT(prompt, type, [options])

Trong đó, prompt là một chuỗi ký tự hiển thị cho người dùng biết cần nhập vào gì, type là loại giá trị cần nhập vào, có thể là “Text”, “Number”, “Date”, “Time”, “DateTime”, “LatLong” hoặc “Enum”, options là một danh sách các giá trị cho phép người dùng chọn nếu type là “Enum”. Ví dụ:

INPUT("Nhập vào số lượng sản phẩm:", "Number") sẽ tạo ra một trường nhập liệu cho người dùng nhập vào một số nguyên hoặc thực.

Bạn có thể sử dụng hàm này để tạo ra các trường nhập liệu tùy biến cho người dùng nhập vào các giá trị cần thiết cho ứng dụng. Ví dụ: bạn có một bảng Đơn hàng với các trường Mã đơn hàng, Tên khách hàng, Số lượng và Đơn giá. Bạn muốn tạo ra một trường mới là Thành tiền, có giá trị là tích của Số lượng và Đơn giá. Tuy nhiên, bạn muốn cho người dùng có thể nhập vào một tỷ lệ giảm giá nếu có. Bạn có thể sử dụng công thức sau:

[Số lượng] * [Đơn giá] * (1 - INPUT("Nhập vào tỷ lệ giảm giá (nếu có):", "Number") / 100)

Kết quả sẽ là một số tiền là thành tiền của đơn hàng sau khi áp dụng giảm giá (nếu có). Ví dụ: nếu một đơn hàng có Số lượng là 10, Đơn giá là 50000 và người dùng nhập vào tỷ lệ giảm giá là 10, thì Thành tiền sẽ là 450000.

Hàm USEREMAIL()

Hàm này dùng để lấy ra địa chỉ email của người dùng đang sử dụng ứng dụng. Cú pháp của hàm là:

USEREMAIL()

Hàm này không cần tham số đầu vào. Ví dụ:

USEREMAIL() sẽ trả về kết quả là địa chỉ email của người dùng đang sử dụng ứng dụng, ví dụ “admin@gmail.com”.

Bạn có thể sử dụng hàm này để lấy ra địa chỉ email của người dùng và sử dụng chúng cho các mục đích khác nhau. Ví dụ: bạn có một bảng Thông báo với các trường Tiêu đề, Nội dung và Người nhận. Bạn muốn tạo ra một trường mới là Đã gửi, có giá trị là TRUE nếu người dùng đang sử dụng ứng dụng là người nhận của thông báo, và FALSE nếu không. Bạn có thể sử dụng công thức sau:

USEREMAIL() = [Người nhận]

Kết quả sẽ là một giá trị logic tương ứng với việc người dùng có phải là người nhận của thông báo hay không. Ví dụ: nếu một thông báo có Tiêu đề là “Thông báo khuyến mãi”, Nội dung là “Giảm giá 50% cho tất cả sản phẩm trong tuần này.” và Người nhận là “admin@gmail.com”, thì Đã gửi sẽ là TRUE nếu người dùng đang sử dụng ứng dụng có địa chỉ email là “admin@gmail.com”, và FALSE nếu không.

NHÓM HÀM LIÊN KẾT

Hàm LINKTOAPP()

Hàm này dùng để tạo ra một liên kết đến một ứng dụng AppSheet khác. Cú pháp của hàm là:

LINKTOAPP(app-id)

Trong đó, app-id là mã nhận diện của ứng dụng AppSheet cần liên kết đến. Ví dụ:

LINKTOAPP("AppSheetSample-123456") sẽ tạo ra một liên kết đến ứng dụng AppSheet có mã nhận diện là “AppSheetSample-123456”.

Bạn có thể sử dụng hàm này để tạo ra các liên kết đến các ứng dụng AppSheet khác cho người dùng chuyển qua lại giữa các ứng dụng. Ví dụ: bạn có hai ứng dụng AppSheet là Quản lý kho hàng và Quản lý bán hàng. Bạn muốn tạo ra một nút trong ứng dụng Quản lý kho hàng để người dùng có thể chuyển sang ứng dụng Quản lý bán hàng. Bạn có thể sử dụng công thức sau:

LINKTOAPP("QuanLyBanHang-123456")

Kết quả sẽ là một liên kết đến ứng dụng Quản lý bán hàng có mã nhận diện là “QuanLyBanHang-123456”. Khi người dùng nhấn vào nút này, họ sẽ được chuyển sang ứng dụng Quản lý bán hàng.

Hàm LINKTOFORM()

Hàm này dùng để tạo ra một liên kết đến một chế độ xem kiểu Form trong cùng ứng dụng hoặc một ứng dụng khác. Cú pháp của hàm là:

LINKTOFORM(view-name, [column1], [value1], ...)

Trong đó, view-name là tên của chế độ xem kiểu Form cần liên kết đến, column1, column2,… là các tên cột trong chế độ xem Form, value1, value2,… là các giá trị cần điền vào các cột tương ứng trong chế độ xem Form. Ví dụ:

LINKTOFORM("Thêm sản phẩm", "Tên sản phẩm", "Bàn chải điện", "Giá", 500000) sẽ tạo ra một liên kết đến chế độ xem kiểu Form có tên là “Thêm sản phẩm”, và điền sẵn hai giá trị là “Bàn chải điện” cho cột “Tên sản phẩm” và 500000 cho cột “Giá”.

Bạn có thể sử dụng hàm này để tạo ra các liên kết đến các chế độ xem kiểu Form để người dùng có thể nhập liệu vào các bảng dữ liệu. Ví dụ: bạn có một bảng Sản phẩm với các trường Mã sản phẩm, Tên sản phẩm, Giá và Loại. Bạn muốn tạo ra một nút trong ứng dụng để người dùng có thể thêm một sản phẩm mới vào bảng Sản phẩm. Bạn có thể sử dụng công thức sau:

LINKTOFORM("Thêm sản phẩm")

Kết quả sẽ là một liên kết đến chế độ xem kiểu Form có tên là “Thêm sản phẩm”, và để trống các giá trị cho các cột trong chế độ xem Form. Khi người dùng nhấn vào nút này, họ sẽ được chuyển sang chế độ xem Form để nhập liệu cho sản phẩm mới.

Hàm LINKTOROW()

Hàm này dùng để tạo ra một liên kết đến một chế độ xem kiểu Detail hoặc Form trong cùng ứng dụng hoặc một ứng dụng khác, và hiển thị chi tiết của một hàng cụ thể trong bảng dữ liệu. Cú pháp của hàm là:

LINKTOROW(row-key, view-name)

Trong đó, row-key là giá trị của khóa chính của hàng cần hiển thị chi tiết, view-name là tên của chế độ xem kiểu Detail hoặc Form cần liên kết đến. Ví dụ:

LINKTOROW("SP123", "Chi tiết sản phẩm") sẽ tạo ra một liên kết đến chế độ xem kiểu Detail có tên là “Chi tiết sản phẩm”, và hiển thị chi tiết của hàng có khóa chính là “SP123” trong bảng dữ liệu.

Bạn có thể sử dụng hàm này để tạo ra các liên kết đến các chế độ xem kiểu Detail hoặc Form để người dùng có thể xem hoặc chỉnh sửa chi tiết của một hàng trong bảng dữ liệu. Ví dụ: bạn có một bảng Đơn hàng với các trường Mã đơn hàng, Tên khách hàng, Số lượng và Đơn giá. Bạn muốn tạo ra một nút trong ứng dụng để người dùng có thể xem chi tiết của một đơn hàng cụ thể. Bạn có thể sử dụng công thức sau:

LINKTOROW([Mã đơn hàng], "Chi tiết đơn hàng")

Kết quả sẽ là một liên kết đến chế độ xem kiểu Detail có tên là “Chi tiết đơn hàng”, và hiển thị chi tiết của hàng có khóa chính là giá trị của cột Mã đơn hàng trong bảng Đơn hàng. Khi người dùng nhấn vào nút này, họ sẽ được chuyển sang chế độ xem Detail để xem chi tiết của đơn hàng.

Hàm LINKTOVIEW()

Hàm này dùng để tạo ra một liên kết đến một chế độ xem bất kỳ trong cùng ứng dụng hoặc một ứng dụng khác. Cú pháp của hàm là:

LINKTOVIEW(view-name)

Trong đó, view-name là tên của chế độ xem cần liên kết đến. Ví dụ:

LINKTOVIEW("Danh sách sản phẩm") sẽ tạo ra một liên kết đến chế độ xem có tên là “Danh sách sản phẩm”.

Bạn có thể sử dụng hàm này để tạo ra các liên kết đến các chế độ xem khác nhau trong ứng dụng để người dùng có thể chuyển qua lại giữa các chế độ xem. Ví dụ: bạn có hai chế độ xem là Danh sách sản phẩm và Danh sách khách hàng. Bạn muốn tạo ra hai nút trong ứng dụng để người dùng có thể chuyển sang chế độ xem Danh sách sản phẩm hoặc Danh sách khách hàng. Bạn có thể sử dụng công thức sau:

LINKTOVIEW("Danh sách sản phẩm") và LINKTOVIEW("Danh sách khách hàng")

Kết quả sẽ là hai liên kết đến hai chế độ xem có tên là “Danh sách sản phẩm” và “Danh sách khách hàng”. Khi người dùng nhấn vào nút này, họ sẽ được chuyển sang chế độ xem tương ứng.

Hàm LINKURL()

Hàm này dùng để tạo ra một liên kết đến một trang web bất kỳ. Cú pháp của hàm là:

LINKURL(url)

Trong đó, url là địa chỉ của trang web cần liên kết đến. Ví dụ:

LINKURL("https://www.google.com") sẽ tạo ra một liên kết đến trang web Google.

Bạn có thể sử dụng hàm này để tạo ra các liên kết đến các trang web khác nhau cho người dùng truy cập. Ví dụ: bạn có một bảng Tin tức với các trường Tiêu đề, Tóm tắt và Nguồn. Bạn muốn tạo ra một nút trong ứng dụng để người dùng có thể xem tin tức đầy đủ trên trang web của Nguồn. Bạn có thể sử dụng công thức sau:

LINKURL([Nguồn])

Kết quả sẽ là một liên kết đến trang web của Nguồn. Khi người dùng nhấn vào nút này, họ sẽ được chuyển sang trang web của Nguồn để xem tin tức đầy đủ.

NHÓM HÀM DANH SÁCH (LIST)

Hàm SELECT()

Hàm này dùng để lấy ra một danh sách các giá trị từ một cột trong một bảng dữ liệu, theo một điều kiện nào đó. Cú pháp của hàm là:

SELECT(table[column], condition, [sort-order], [limit])

Trong đó, table là tên của bảng dữ liệu cần lấy giá trị, column là tên của cột cần lấy giá trị, condition là biểu thức logic cần kiểm tra cho từng hàng trong bảng, sort-order là thứ tự sắp xếp cho danh sách kết quả, có thể là TRUE (tăng dần), FALSE (giảm dần) hoặc bỏ trống (không sắp xếp), limit là số lượng giới hạn cho danh sách kết quả, có thể là một số nguyên hoặc bỏ trống (không giới hạn). Ví dụ:

SELECT(Sản phẩm[Giá], [Loại] = "Điện tử", TRUE) sẽ lấy ra một danh sách các giá trị của cột Giá trong bảng Sản phẩm, với điều kiện cột Loại có giá trị là “Điện tử”, và sắp xếp danh sách kết quả theo thứ tự tăng dần.

Bạn có thể sử dụng hàm này để lấy ra các danh sách các giá trị từ các bảng dữ liệu khác nhau theo các điều kiện khác nhau. Ví dụ: bạn có một bảng Đơn hàng với các trường Mã đơn hàng, Tên khách hàng, Số lượng, Đơn giá và Thành tiền. Bạn muốn tạo ra một trường mới là Tổng tiền, có giá trị là tổng của tất cả các giá trị trong cột Thành tiền. Bạn có thể sử dụng công thức sau:

SUM(SELECT(Đơn hàng[Thành tiền], TRUE))

Kết quả sẽ là một số tiền là tổng của tất cả các giá trị trong cột Thành tiền trong bảng Đơn hàng.

Hàm ANY()

Hàm này dùng để lấy ra một giá trị ngẫu nhiên từ một danh sách các giá trị. Cú pháp của hàm là:

ANY(list)

Trong đó, list là một danh sách các giá trị cần lấy ra một giá trị ngẫu nhiên. Ví dụ:

ANY({"Đỏ", "Xanh", "Vàng"}) sẽ lấy ra một giá trị ngẫu nhiên là “Đỏ”, “Xanh” hoặc “Vàng”.

Bạn có thể sử dụng hàm này để lấy ra một giá trị ngẫu nhiên từ một danh sách các giá trị cho các mục đích khác nhau. Ví dụ: bạn có một bảng Sản phẩm với các trường Mã sản phẩm, Tên sản phẩm, Giá và Loại. Bạn muốn tạo ra một trường mới là Màu sắc, có giá trị là một màu ngẫu nhiên cho từng sản phẩm. Bạn có thể sử dụng công thức sau:

ANY({"Đỏ", "Xanh", "Vàng", "Tím", "Hồng"})

Kết quả sẽ là một giá trị ngẫu nhiên là một trong các màu trong danh sách cho từng sản phẩm.

Hàm COUNT()

Hàm này dùng để đếm số lượng các giá trị trong một danh sách các giá trị. Cú pháp của hàm là:

COUNT(list)

Trong đó, list là một danh sách các giá trị cần đếm số lượng. Ví dụ:

COUNT({"Đỏ", "Xanh", "Vàng"}) sẽ đếm số lượng các giá trị trong danh sách và trả về kết quả là 3.

Bạn có thể sử dụng hàm này để đếm số lượng các giá trị trong các danh sách khác nhau cho các mục đích khác nhau. Ví dụ: bạn có một bảng Đơn hàng với các trường Mã đơn hàng, Tên khách hàng, Số lượng, Đơn giá và Thành tiền. Bạn muốn tạo ra một trường mới là Số đơn hàng, có giá trị là số lượng các đơn hàng của từng khách hàng. Bạn có thể sử dụng công thức sau:

COUNT(SELECT(Đơn hàng[Mã đơn hàng], [Tên khách hàng] = [_THISROW].[Tên khách hàng]))

Kết quả sẽ là số lượng các đơn hàng của từng khách hàng.

Hàm IN()

Hàm này dùng để kiểm tra xem một giá trị có nằm trong một danh sách các giá trị hay không. Cú pháp của hàm là:

IN(value, list)

Trong đó, value là giá trị cần kiểm tra, list là một danh sách các giá trị cần kiểm tra xem có chứa value hay không. Ví dụ:

IN("Xanh", {"Đỏ", "Xanh", "Vàng"}) sẽ kiểm tra xem danh sách có chứa giá trị “Xanh” hay không và trả về kết quả là TRUE.

Bạn có thể sử dụng hàm này để kiểm tra xem một giá trị có nằm trong một danh sách các giá trị hay không cho các mục đích khác nhau. Ví dụ: bạn có một bảng Sản phẩm với các trường Mã sản phẩm, Tên sản phẩm, Giá và Loại. Bạn muốn tạo ra một trường mới là Đang khuyến mãi, có giá trị là TRUE nếu sản phẩm thuộc một trong các loại đang được khuyến mãi, và FALSE nếu không. Bạn có thể sử dụng công thức sau:

IN([Loại], {"Điện tử", "Thời trang", "Mỹ phẩm"})

Kết quả sẽ là một giá trị logic tương ứng với việc sản phẩm có thuộc một trong các loại đang được khuyến mãi hay không. Ví dụ: nếu một sản phẩm có Loại là “Điện tử”, thì Đang khuyến mãi sẽ là TRUE. Nếu một sản phẩm có Loại là “Sách”, thì Đang khuyến mãi sẽ là FALSE.

Hàm INDEX()

Hàm này dùng để lấy ra một giá trị tại một vị trí cụ thể trong một danh sách các giá trị. Cú pháp của hàm là:

INDEX(list, position)

Trong đó, list là một danh sách các giá trị cần lấy ra giá trị tại vị trí cụ thể, position là vị trí cần lấy ra giá trị, bắt đầu từ 1. Ví dụ:

INDEX({"Đỏ", "Xanh", "Vàng"}, 2) sẽ lấy ra giá trị tại vị trí thứ 2 trong danh sách và trả về kết quả là “Xanh”.

Bạn có thể sử dụng hàm này để lấy ra một giá trị tại một vị trí cụ thể trong một danh sách các giá trị cho các mục đích khác nhau. Ví dụ: bạn có một bảng Đơn hàng với các trường Mã đơn hàng, Tên khách hàng, Số lượng, Đơn giá và Thành tiền. Bạn muốn tạo ra một trường mới là Mã khách hàng, có giá trị là hai ký tự đầu tiên của Tên khách hàng và ba số cuối cùng của Mã đơn hàng. Bạn có thể sử dụng công thức sau:

CONCATENATE(LEFT([Tên khách hàng], 2), INDEX(SPLIT([Mã đơn hàng], "-"), 3))

Kết quả sẽ là một chuỗi ký tự bao gồm hai ký tự đầu tiên của Tên khách hàng và ba số cuối cùng của Mã đơn hàng. Ví dụ: nếu một đơn hàng có Tên khách hàng là “Nguyễn Văn A” và Mã đơn hàng là “DH-2021-123”, thì Mã khách hàng sẽ là “NG123”.

Hàm MAX()

Hàm này dùng để lấy ra giá trị lớn nhất trong một danh sách các giá trị. Cú pháp của hàm là:

MAX(list)

Trong đó, list là một danh sách các giá trị cần lấy ra giá trị lớn nhất. Ví dụ:

MAX({1, 2, 3, 4, 5}) sẽ lấy ra giá trị lớn nhất trong danh sách và trả về kết quả là 5.

Bạn có thể sử dụng hàm này để lấy ra giá trị lớn nhất trong một danh sách các giá trị cho các mục đích khác nhau. Ví dụ: bạn có một bảng Đơn hàng với các trường Mã đơn hàng, Tên khách hàng, Số lượng, Đơn giá và Thành tiền. Bạn muốn tạo ra một trường mới là Giá cao nhất, có giá trị là giá cao nhất của tất cả các sản phẩm trong bảng Sản phẩm. Bạn có thể sử dụng công thức sau:

MAX(Sản phẩm[Giá])

Kết quả sẽ là một số tiền là giá cao nhất của tất cả các sản phẩm trong bảng Sản phẩm.

Hàm MIN()

Hàm này dùng để lấy ra giá trị nhỏ nhất trong một danh sách các giá trị. Cú pháp của hàm là:

MIN(list)

Trong đó, list là một danh sách các giá trị cần lấy ra giá trị nhỏ nhất. Ví dụ:

MIN({1, 2, 3, 4, 5}) sẽ lấy ra giá trị nhỏ nhất trong danh sách và trả về kết quả là 1.

Bạn có thể sử dụng hàm này để lấy ra giá trị nhỏ nhất trong một danh sách các giá trị cho các mục đích khác nhau. Ví dụ: bạn có một bảng Đơn hàng với các trường Mã đơn hàng, Tên khách hàng, Số lượng, Đơn giá và Thành tiền. Bạn muốn tạo ra một trường mới là Giá thấp nhất, có giá trị là giá thấp nhất của tất cả các sản phẩm trong bảng Sản phẩm. Bạn có thể sử dụng công thức sau:

MIN(Sản phẩm[Giá])

Kết quả sẽ là một số tiền là giá thấp nhất của tất cả các sản phẩm trong bảng Sản phẩm.

Hàm SPLIT()

Hàm này dùng để tách một chuỗi ký tự thành một danh sách các chuỗi ký tự theo một ký tự phân cách nào đó. Cú pháp của hàm là:

SPLIT(text, separator)

Trong đó, text là chuỗi ký tự cần tách thành danh sách, separator là ký tự phân cách cần tách chuỗi ký tự theo. Ví dụ:

SPLIT("Đỏ-Xanh-Vàng", "-") sẽ tách chuỗi ký tự “Đỏ-Xanh-Vàng” thành một danh sách các chuỗi ký tự theo ký tự phân cách “-” và trả về kết quả là {“Đỏ”, “Xanh”, “Vàng”}.

Bạn có thể sử dụng hàm này để tách một chuỗi ký tự thành một danh sách các chuỗi ký tự theo một ký tự phân cách nào đó cho các mục đích khác nhau. Ví dụ: bạn có một bảng Đơn hàng với các trường Mã đơn hàng, Tên khách hàng, Số lượng, Đơn giá và Thành tiền. Bạn muốn tạo ra một trường mới là Năm đặt hàng, có giá trị là năm của Mã đơn hàng. Bạn có thể sử dụng công thức sau:

INDEX(SPLIT([Mã đơn hàng], "-"), 2)

Kết quả sẽ là một chuỗi ký tự là năm của Mã đơn hàng. Ví dụ: nếu một đơn hàng có Mã đơn hàng là “DH-2021-123”, thì Năm đặt hàng sẽ là “2021”.

Hàm UNIQUE()

Hàm này dùng để lấy ra một danh sách các giá trị duy nhất từ một danh sách các giá trị. Cú pháp của hàm là:

UNIQUE(list)

Trong đó, list là một danh sách các giá trị cần lấy ra các giá trị duy nhất. Ví dụ:

UNIQUE({"Đỏ", "Xanh", "Vàng", "Đỏ", "Xanh"}) sẽ lấy ra một danh sách các giá trị duy nhất từ danh sách và trả về kết quả là {“Đỏ”, “Xanh”, “Vàng”}.

Bạn có thể sử dụng hàm này để lấy ra một danh sách các giá trị duy nhất từ một danh sách các giá trị cho các mục đích khác nhau. Ví dụ: bạn có một bảng Sản phẩm với các trường Mã sản phẩm, Tên sản phẩm, Giá và Loại. Bạn muốn tạo ra một trường mới là Danh sách loại, có giá trị là một danh sách các loại sản phẩm duy nhất trong bảng Sản phẩm. Bạn có thể sử dụng công thức sau:

UNIQUE(Sản phẩm[Loại])

Kết quả sẽ là một danh sách các loại sản phẩm duy nhất trong bảng Sản phẩm. Ví dụ: nếu bảng Sản phẩm có các loại sản phẩm là “Điện tử”, “Thời trang”, “Mỹ phẩm”, “Sách” và “Điện tử”, thì Danh sách loại sẽ là {“Điện tử”, “Thời trang”, “Mỹ phẩm”, “Sách”}.

NHÓM HÀM TOÁN HỌC (LOGICAL)

Hàm AND()

Hàm này dùng để kiểm tra xem tất cả các biểu thức logic trong một danh sách các biểu thức logic có đều đúng hay không. Cú pháp của hàm là:

AND(list)

Trong đó, list là một danh sách các biểu thức logic cần kiểm tra xem có đều đúng hay không. Ví dụ:

AND({TRUE, TRUE, FALSE}) sẽ kiểm tra xem tất cả các biểu thức logic trong danh sách có đều đúng hay không và trả về kết quả là FALSE.

Bạn có thể sử dụng hàm này để kiểm tra xem tất cả các biểu thức logic trong một danh sách các biểu thức logic có đều đúng hay không cho các mục đích khác nhau. Ví dụ: bạn có một bảng Đơn hàng với các trường Mã đơn hàng, Tên khách hàng, Số lượng, Đơn giá và Thành tiền. Bạn muốn tạo ra một trường mới là Đơn hàng lớn, có giá trị là TRUE nếu Số lượng lớn hơn hoặc bằng 10 và Thành tiền lớn hơn hoặc bằng 1000000, và FALSE nếu không. Bạn có thể sử dụng công thức sau:

AND([Số lượng] >= 10, [Thành tiền] >= 1000000)

Kết quả sẽ là một giá trị logic tương ứng với việc Số lượng lớn hơn hoặc bằng 10 và Thành tiền lớn hơn hoặc bằng 1000000 hay không. Ví dụ: nếu một đơn hàng có Số lượng là 15 và Thành tiền là 1500000, thì Đơn hàng lớn sẽ là TRUE. Nếu một đơn hàng có Số lượng là 5 và Thành tiền là 500000, thì Đơn hàng lớn sẽ là FALSE.

Hàm NOT()

Hàm này dùng để đảo ngược kết quả của một biểu thức logic. Cú pháp của hàm là:

NOT(expression)

Trong đó, expression là một biểu thức logic cần đảo ngược kết quả. Ví dụ:

NOT(TRUE) sẽ đảo ngược kết quả của biểu thức logic TRUE và trả về kết quả là FALSE.

Bạn có thể sử dụng hàm này để đảo ngược kết quả của một biểu thức logic cho các mục đích khác nhau. Ví dụ: bạn có một bảng Sản phẩm với các trường Mã sản phẩm, Tên sản phẩm, Giá và Loại. Bạn muốn tạo ra một trường mới là Không phải điện tử, có giá trị là TRUE nếu Loại không phải là “Điện tử”, và FALSE nếu không. Bạn có thể sử dụng công thức sau:

NOT([Loại] = "Điện tử")

Kết quả sẽ là một giá trị logic tương ứng với việc Loại không phải là “Điện tử” hay không. Ví dụ: nếu một sản phẩm có Loại là “Thời trang”, thì Không phải điện tử sẽ là TRUE. Nếu một sản phẩm có Loại là “Điện tử”, thì Không phải điện tử sẽ là FALSE.

Hàm OR()

Hàm này dùng để kiểm tra xem ít nhất một biểu thức logic trong một danh sách các biểu thức logic có đúng hay không. Cú pháp của hàm là:

OR(list)

Trong đó, list là một danh sách các biểu thức logic cần kiểm tra xem có ít nhất một biểu thức logic đúng hay không. Ví dụ:

OR({TRUE, TRUE, FALSE}) sẽ kiểm tra xem ít nhất một biểu thức logic trong danh sách có đúng hay không và trả về kết quả là TRUE.

Bạn có thể sử dụng hàm này để kiểm tra xem ít nhất một biểu thức logic trong một danh sách các biểu thức logic có đúng hay không cho các mục đích khác nhau. Ví dụ: bạn có một bảng Đơn hàng với các trường Mã đơn hàng, Tên khách hàng, Số lượng, Đơn giá và Thành tiền. Bạn muốn tạo ra một trường mới là Đơn hàng nhỏ, có giá trị là TRUE nếu Số lượng nhỏ hơn hoặc bằng 5 hoặc Thành tiền nhỏ hơn hoặc bằng 500000, và FALSE nếu không. Bạn có thể sử dụng công thức sau:

OR([Số lượng] <= 5, [Thành tiền] <= 500000)

Kết quả sẽ là một giá trị logic tương ứng với việc Số lượng nhỏ hơn hoặc bằng 5 hoặc Thành tiền nhỏ hơn hoặc bằng 500000 hay không. Ví dụ: nếu một đơn hàng có Số lượng là 3 và Thành tiền là 300000, thì Đơn hàng nhỏ sẽ là TRUE. Nếu một đơn hàng có Số lượng là 10 và Thành tiền là 1000000, thì Đơn hàng nhỏ sẽ là FALSE.

Hàm ROUND()

Hàm này dùng để làm tròn một số thập phân đến một số chữ số thập phân nào đó. Cú pháp của hàm là:

ROUND(number, digits)

Trong đó, number là số thập phân cần làm tròn, digits là số chữ số thập phân cần làm tròn đến. Ví dụ:

ROUND(3.14159, 2) sẽ làm tròn số 3.14159 đến 2 chữ số thập phân và trả về kết quả là 3.14.

Bạn có thể sử dụng hàm này để làm tròn một số thập phân đến một số chữ số thập phân nào đó cho các mục đích khác nhau. Ví dụ: bạn có một bảng Đơn hàng với các trường Mã đơn hàng, Tên khách hàng, Số lượng, Đơn giá và Thành tiền. Bạn muốn tạo ra một trường mới là Thành tiền làm tròn, có giá trị là Thành tiền được làm tròn đến 2 chữ số thập phân. Bạn có thể sử dụng công thức sau:

ROUND([Thành tiền], 2)

Kết quả sẽ là một số tiền được làm tròn đến 2 chữ số thập phân. Ví dụ: nếu một đơn hàng có Thành tiền là 123456.78, thì Thành tiền làm tròn sẽ là 123456.80.

NHÓM HÀM BẢNG(TABLE)

Hàm FILTER()

Hàm này dùng để lọc ra một danh sách các hàng từ một bảng dữ liệu theo một điều kiện nào đó. Cú pháp của hàm là:

FILTER(table, condition)

Trong đó, table là tên của bảng dữ liệu cần lọc ra các hàng, condition là biểu thức logic cần kiểm tra cho từng hàng trong bảng. Ví dụ:

FILTER(Sản phẩm, [Loại] = "Điện tử") sẽ lọc ra một danh sách các hàng trong bảng Sản phẩm, với điều kiện cột Loại có giá trị là “Điện tử”.

Bạn có thể sử dụng hàm này để lọc ra một danh sách các hàng từ một bảng dữ liệu theo một điều kiện nào đó cho các mục đích khác nhau. Ví dụ: bạn có một bảng Đơn hàng với các trường Mã đơn hàng, Tên khách hàng, Số lượng, Đơn giá và Thành tiền. Bạn muốn tạo ra một trường mới là Danh sách đơn hàng lớn, có giá trị là một danh sách các Mã đơn hàng của các đơn hàng có Số lượng lớn hơn hoặc bằng 10 và Thành tiền lớn hơn hoặc bằng 1000000. Bạn có thể sử dụng công thức sau:

FILTER(Đơn hàng, AND([Số lượng] >= 10, [Thành tiền] >= 1000000))[Mã đơn hàng]

Kết quả sẽ là một danh sách các Mã đơn hàng của các đơn hàng có Số lượng lớn hơn hoặc bằng 10 và Thành tiền lớn hơn hoặc bằng 1000000.

Hàm LOOKUP()

Hàm này dùng để tìm kiếm một giá trị trong một cột của một bảng dữ liệu theo một giá trị khóa chính, và trả về một giá trị trong một cột khác của cùng hàng. Cú pháp của hàm là:

LOOKUP(key-value, table, key-column, result-column)

Trong đó, key-value là giá trị khóa chính cần tìm kiếm, table là tên của bảng dữ liệu cần tìm kiếm, key-column là tên của cột chứa giá trị khóa chính, result-column là tên của cột chứa giá trị cần trả về. Ví dụ:

LOOKUP("SP123", Sản phẩm, Mã sản phẩm, Tên sản phẩm) sẽ tìm kiếm giá trị “SP123” trong cột Mã sản phẩm của bảng Sản phẩm, và trả về giá trị trong cột Tên sản phẩm của cùng hàng.

Bạn có thể sử dụng hàm này để tìm kiếm một giá trị trong một cột của một bảng dữ liệu theo một giá trị khóa chính, và trả về một giá trị trong một cột khác của cùng hàng cho các mục đích khác nhau. Ví dụ: bạn có hai bảng là Đơn hàng và Khách hàng. Bảng Đơn hàng có các trường Mã đơn hàng, Tên khách hàng, Số lượng, Đơn giá và Thành tiền. Bảng Khách hàng có các trường Tên khách hàng, Địa chỉ, Số điện thoại và Email. Bạn muốn tạo ra một trường mới trong bảng Đơn hàng là Email khách hàng, có giá trị là Email của khách hàng tương ứng với Tên khách hàng trong bảng Khách hàng. Bạn có thể sử dụng công thức sau:

LOOKUP([Tên khách hàng], Khách hàng, Tên khách hàng, Email)

Kết quả sẽ là Email của khách hàng tương ứng với Tên khách hàng trong bảng Khách hàng.

Hàm MAXROW()

Hàm này dùng để tìm kiếm một hàng trong một bảng dữ liệu có giá trị lớn nhất trong một cột nào đó, và trả về một giá trị trong một cột khác của cùng hàng. Cú pháp của hàm là:

MAXROW(table, column-to-maximize, [condition], [result-column])

Trong đó, table là tên của bảng dữ liệu cần tìm kiếm, column-to-maximize là tên của cột cần tìm giá trị lớn nhất, condition là biểu thức logic cần kiểm tra cho từng hàng trong bảng (có thể bỏ trống), result-column là tên của cột chứa giá trị cần trả về (có thể bỏ trống). Nếu result-column bỏ trống, hàm sẽ trả về giá trị của khóa chính của bảng. Ví dụ:

MAXROW(Đơn hàng, Thành tiền) sẽ tìm kiếm một hàng trong bảng Đơn hàng có giá trị lớn nhất trong cột Thành tiền, và trả về giá trị của cột Mã đơn hàng của cùng hàng.

Bạn có thể sử dụng hàm này để tìm kiếm một hàng trong một bảng dữ liệu có giá trị lớn nhất trong một cột nào đó, và trả về một giá trị trong một cột khác của cùng hàng cho các mục đích khác nhau. Ví dụ: bạn có hai bảng là Đơn hàng và Khách hàng. Bảng Đơn hàng có các trường Mã đơn hàng, Tên khách hàng, Số lượng, Đơn giá và Thành tiền. Bảng Khách hàng có các trường Tên khách hàng, Địa chỉ, Số điện thoại và Email. Bạn muốn tạo ra một trường mới trong bảng Khách hàng là Đơn hàng lớn nhất, có giá trị là Mã đơn hàng của đơn hàng có Thành tiền lớn nhất của từng khách hàng. Bạn có thể sử dụng công thức sau:

MAXROW(Đơn hàng, Thành tiền, [Tên khách hàng] = [_THISROW].[Tên khách hàng])

Kết quả sẽ là Mã đơn hàng của đơn hàng có Thành tiền lớn nhất của từng khách hàng.

Hàm MINROW()

Hàm này dùng để tìm kiếm một hàng trong một bảng dữ liệu có giá trị nhỏ nhất trong một cột nào đó, và trả về một giá trị trong một cột khác của cùng hàng. Cú pháp của hàm là:

MINROW(table, column-to-minimize, [condition], [result-column])

Trong đó, table là tên của bảng dữ liệu cần tìm kiếm, column-to-minimize là tên của cột cần tìm giá trị nhỏ nhất, condition là biểu thức logic cần kiểm tra cho từng hàng trong bảng (có thể bỏ trống), result-column là tên của cột chứa giá trị cần trả về (có thể bỏ trống). Nếu result-column bỏ trống, hàm sẽ trả về giá trị của khóa chính của bảng. Ví dụ:

MINROW(Đơn hàng, Thành tiền) sẽ tìm kiếm một hàng trong bảng Đơn hàng có giá trị nhỏ nhất trong cột Thành tiền, và trả về giá trị của cột Mã đơn hàng của cùng hàng.

Bạn có thể sử dụng hàm này để tìm kiếm một hàng trong một bảng dữ liệu có giá trị nhỏ nhất trong một cột nào đó, và trả về một giá trị trong một cột khác của cùng hàng cho các mục đích khác nhau. Ví dụ: bạn có hai bảng là Đơn hàng và Khách hàng. Bảng Đơn hàng có các trường Mã đơn hàng, Tên khách hàng, Số lượng, Đơn giá và Thành tiền. Bảng Khách hàng có các trường Tên khách hàng, Địa chỉ, Số điện thoại và Email. Bạn muốn tạo ra một trường mới trong bảng Khách hàng là Đơn hàng nhỏ nhất, có giá trị là Mã đơn hàng của đơn hàng có Thành tiền nhỏ nhất của từng khách hàng. Bạn có thể sử dụng công thức sau:

MINROW(Đơn hàng, Thành tiền, [Tên khách hàng] = [_THISROW].[Tên khách hàng])

Kết quả sẽ là Mã đơn hàng của đơn hàng có Thành tiền nhỏ nhất của từng khách hàng.

Hàm ORDERBY()

Hàm này dùng để sắp xếp một danh sách các hàng từ một bảng dữ liệu theo một hoặc nhiều cột nào đó, và trả về một danh sách các giá trị trong một cột khác của cùng hàng. Cú pháp của hàm là:

ORDERBY(table, column-to-order-by-1, sort-order-1, [column-to-order-by-2, sort-order-2, ...], [result-column])

Trong đó, table là tên của bảng dữ liệu cần sắp xếp các hàng, column-to-order-by-1, column-to-order-by-2,… là các tên của cột cần sắp xếp các hàng theo, sort-order-1, sort-order-2,… là các thứ tự sắp xếp cho từng cột, có thể là TRUE (tăng dần), FALSE (giảm dần) hoặc bỏ trống (không sắp xếp), result-column là tên của cột chứa giá trị cần trả về (có thể bỏ trống). Nếu result-column bỏ trống, hàm sẽ trả về giá trị của khóa chính của bảng. Ví dụ:

ORDERBY(Đơn hàng, Thành tiền, FALSE) sẽ sắp xếp một danh sách các hàng trong bảng Đơn hàng theo giá trị của cột Thành tiền theo thứ tự giảm dần, và trả về một danh sách các giá trị của cột Mã đơn hàng của cùng hàng.

Bạn có thể sử dụng hàm này để sắp xếp một danh sách các hàng từ một bảng dữ liệu theo một hoặc nhiều cột nào đó, và trả về một danh sách các giá trị trong một cột khác của cùng hàng cho các mục đích khác nhau. Ví dụ: bạn có hai bảng là Đơn hàng và Khách hàng. Bảng Đơn hàng có các trường Mã đơn hàng, Tên khách hàng, Số lượng, Đơn giá và Thành tiền. Bảng Khách hàng có các trường Tên khách hàng, Địa chỉ, Số điện thoại và Email. Bạn muốn tạo ra một trường mới trong bảng Khách hàng là Danh sách đơn hàng theo giá, có giá trị là một danh sách các Mã đơn hàng của từng khách hàng được sắp xếp theo Thành tiền từ cao đến thấp. Bạn có thể sử dụng công thức sau:

ORDERBY(FILTER(Đơn hàng, [Tên khách hàng] = [_THISROW].[Tên khách hàng]), Thành tiền, FALSE)[Mã đơn hàng]

Kết quả sẽ là một danh sách các Mã đơn hàng của từng khách hàng được sắp xếp theo Thành tiền từ cao đến thấp.

NHÓM HÀM VĂN BẢN (TEXT)

Hàm CONCATENATE()

Hàm này dùng để nối hai hoặc nhiều chuỗi ký tự lại với nhau. Cú pháp của hàm là:

CONCATENATE(text1, text2, ...)

Trong đó, text1, text2,… là các chuỗi ký tự cần nối. Ví dụ:

CONCATENATE("Xin", " ", "chào") sẽ trả về kết quả là “Xin chào”.

Bạn có thể sử dụng hàm này để tạo ra các chuỗi ký tự độc đáo từ các trường dữ liệu khác nhau. Ví dụ: bạn có một bảng Đơn hàng với các trường Mã đơn hàng, Tên khách hàng và Ngày đặt hàng. Bạn muốn tạo ra một trường mới là Mã đơn hàng đầy đủ, có giá trị là sự kết hợp của Mã đơn hàng và Ngày đặt hàng. Bạn có thể sử dụng công thức sau:

CONCATENATE([Mã đơn hàng], "-", [Ngày đặt hàng])

Kết quả sẽ là một chuỗi ký tự có dạng như: “DH123-2021-10-23”.

Hàm EXTRACT()

Hàm này dùng để tìm kiếm và lấy ra một danh sách các chuỗi ký tự trong một chuỗi ký tự lớn hơn theo một loại nào đó. Cú pháp của hàm là:

EXTRACT(type, text)

Trong đó, type là loại chuỗi ký tự cần tìm kiếm và lấy ra, có thể là EMAILS (địa chỉ email), HASHTAGS (thẻ hashtag), MENTIONS (thẻ người dùng), NUMBERS (số), PERCENTS (phần trăm), PHONE_NUMBERS (số điện thoại), PRICES (giá tiền), URLS (địa chỉ web) hoặc DATES (ngày tháng), text là chuỗi ký tự lớn hơn cần tìm kiếm và lấy ra các chuỗi ký tự. Ví dụ:

EXTRACT(EMAILS, "Xin chào, bạn có thể liên hệ với tôi qua email: abc@gmail.com hoặc xyz@yahoo.com") sẽ tìm kiếm và lấy ra một danh sách các địa chỉ email trong chuỗi ký tự và trả về kết quả là {“abc@gmail.com”, “xyz@yahoo.com”}.

Bạn có thể sử dụng hàm này để tìm kiếm và lấy ra một danh sách các chuỗi ký tự trong một chuỗi ký tự lớn hơn theo một loại nào đó cho các mục đích khác nhau. Ví dụ: bạn có một bảng Tin tức với các trường Tiêu đề, Tóm tắt và Nguồn. Bạn muốn tạo ra một trường mới là Danh sách email, có giá trị là một danh sách các địa chỉ email trong cột Tóm tắt. Bạn có thể sử dụng công thức sau:

EXTRACT(EMAILS, [Tóm tắt])

Kết quả sẽ là một danh sách các địa chỉ email trong cột Tóm tắt.

Hàm FIND()

Hàm này dùng để tìm kiếm vị trí xuất hiện đầu tiên của một chuỗi ký tự trong một chuỗi ký tự khác. Cú pháp của hàm là:

FIND(search-text, text, [start-at])

Trong đó, search-text là chuỗi ký tự cần tìm kiếm, text là chuỗi ký tự cần tìm kiếm trong đó, start-at là vị trí bắt đầu tìm kiếm (có thể bỏ trống). Nếu start-at bỏ trống, hàm sẽ bắt đầu tìm kiếm từ vị trí đầu tiên của text. Ví dụ:

FIND("App", "AppSheet is a no-code platform for building mobile apps.") sẽ tìm kiếm vị trí xuất hiện đầu tiên của chuỗi ký tự “App” trong chuỗi ký tự “AppSheet is a no-code platform for building mobile apps.” và trả về kết quả là 1.

Bạn có thể sử dụng hàm này để tìm kiếm vị trí xuất hiện đầu tiên của một chuỗi ký tự trong một chuỗi ký tự khác cho các mục đích khác nhau. Ví dụ: bạn có một bảng Sản phẩm với các trường Mã sản phẩm, Tên sản phẩm, Giá và Loại. Bạn muốn tạo ra một trường mới là Có chứa SP, có giá trị là TRUE nếu Mã sản phẩm có chứa chuỗi ký tự “SP”, và FALSE nếu không. Bạn có thể sử dụng công thức sau:

FIND("SP", [Mã sản phẩm]) > 0

Kết quả sẽ là một giá trị logic tương ứng với việc Mã sản phẩm có chứa chuỗi ký tự “SP” hay không. Ví dụ: nếu một sản phẩm có Mã sản phẩm là “SP123”, thì Có chứa SP sẽ là TRUE. Nếu một sản phẩm có Mã sản phẩm là “ABC456”, thì Có chứa SP sẽ là FALSE.

Hàm LEFT()

Hàm này dùng để lấy ra một số lượng ký tự từ bên trái của một chuỗi ký tự. Cú pháp của hàm là:

LEFT(text, number-of-characters)

Trong đó, text là chuỗi ký tự cần lấy ra một số lượng ký tự từ bên trái, number-of-characters là số lượng ký tự cần lấy ra. Ví dụ:

LEFT("AppSheet", 3) sẽ lấy ra 3 ký tự từ bên trái của chuỗi ký tự “AppSheet” và trả về kết quả là “App”.

Bạn có thể sử dụng hàm này để lấy ra một số lượng ký tự từ bên trái của một chuỗi ký tự cho các mục đích khác nhau. Ví dụ: bạn có một bảng Đơn hàng với các trường Mã đơn hàng, Tên khách hàng, Số lượng, Đơn giá và Thành tiền. Bảng Khách hàng có các trường Tên khách hàng, Địa chỉ, Số điện thoại và Email. Bạn muốn tạo ra một trường mới trong bảng Đơn hàng là Mã khách hàng, có giá trị là hai ký tự đầu tiên của Tên khách hàng và ba số cuối cùng của Mã đơn hàng. Bạn có thể sử dụng công thức sau:

CONCATENATE(LEFT([Tên khách hàng], 2), RIGHT([Mã đơn hàng], 3))

Kết quả sẽ là một chuỗi ký tự bao gồm hai ký tự đầu tiên của Tên khách hàng và ba số cuối cùng của Mã đơn hàng. Ví dụ: nếu một đơn hàng có Tên khách hàng là “Nguyễn Văn A” và Mã đơn hàng là “DH-2021-123”, thì Mã khách hàng sẽ là “NG123”.

Hàm LEN()

Hàm này dùng để đếm số lượng ký tự trong một chuỗi ký tự. Cú pháp của hàm là:

LEN(text)

Trong đó, text là chuỗi ký tự cần đếm số lượng ký tự. Ví dụ:

LEN("AppSheet") sẽ đếm số lượng ký tự trong chuỗi ký tự “AppSheet” và trả về kết quả là 8.

Bạn có thể sử dụng hàm này để đếm số lượng ký tự trong một chuỗi ký tự cho các mục đích khác nhau. Ví dụ: bạn có một bảng Tin tức với các trường Tiêu đề, Tóm tắt và Nguồn. Bạn muốn tạo ra một trường mới là Độ dài tiêu đề, có giá trị là số lượng ký tự trong cột Tiêu đề. Bạn có thể sử dụng công thức sau:

LEN([Tiêu đề])

Kết quả sẽ là số lượng ký tự trong cột Tiêu đề.

Hàm LOWER()

Hàm này dùng để chuyển một chuỗi ký tự thành chữ thường. Cú pháp của hàm là:

LOWER(text)

Trong đó, text là chuỗi ký tự cần chuyển thành chữ thường. Ví dụ:

LOWER("AppSheet") sẽ chuyển chuỗi ký tự “AppSheet” thành chữ thường và trả về kết quả là “appsheet”.

Bạn có thể sử dụng hàm này để chuyển một chuỗi ký tự thành chữ thường cho các mục đích khác nhau. Ví dụ: bạn có một bảng Khách hàng với các trường Tên khách hàng, Địa chỉ, Số điện thoại và Email. Bạn muốn tạo ra một trường mới là Email thường, có giá trị là Email được chuyển thành chữ thường. Bạn có thể sử dụng công thức sau:

LOWER([Email])

Kết quả sẽ là Email được chuyển thành chữ thường. Ví dụ: nếu một khách hàng có Email là “ABC@gmail.com”, thì Email thường sẽ là “abc@gmail.com”.

Hàm SUBSTITUTE()

Hàm này dùng để thay thế một chuỗi ký tự bằng một chuỗi ký tự khác trong một chuỗi ký tự lớn hơn. Cú pháp của hàm là:

SUBSTITUTE(text, search-text, replacement-text, [occurrence-number])

Trong đó, text là chuỗi ký tự lớn hơn cần thay thế một chuỗi ký tự bằng một chuỗi ký tự khác, search-text là chuỗi ký tự cần tìm kiếm và thay thế, replacement-text là chuỗi ký tự cần thay thế cho search-text, occurrence-number là số thứ tự của lần xuất hiện của search-text cần thay thế (có thể bỏ trống). Nếu occurrence-number bỏ trống, hàm sẽ thay thế tất cả các lần xuất hiện của search-text. Ví dụ:

SUBSTITUTE("AppSheet is a no-code platform for building mobile apps.", "App", "Web") sẽ thay thế chuỗi ký tự “App” bằng chuỗi ký tự “Web” trong chuỗi ký tự “AppSheet is a no-code platform for building mobile apps.” và trả về kết quả là “WebSheet is a no-code platform for building mobile webs.”.

Bạn có thể sử dụng hàm này để thay thế một chuỗi ký tự bằng một chuỗi ký tự khác trong một chuỗi ký tự lớn hơn cho các mục đích khác nhau. Ví dụ: bạn có một bảng Tin tức với các trường Tiêu đề, Tóm tắt và Nguồn. Bạn muốn tạo ra một trường mới là Tiêu đề sửa, có giá trị là Tiêu đề được sửa lại bằng cách thay thế từ “khủng hoảng” bằng từ “thách thức”. Bạn có thể sử dụng công thức sau:

SUBSTITUTE([Tiêu đề], "khủng hoảng", "thách thức")

Kết quả sẽ là Tiêu đề được sửa lại bằng cách thay thế từ “khủng hoảng” bằng từ “thách thức”. Ví dụ: nếu một tin tức có Tiêu đề là “Cách đối phó với khủng hoảng nợ công”, thì Tiêu đề sửa sẽ là “Cách đối phó với thách thức nợ công”.

Hàm TEXT()

Hàm này dùng để chuyển một giá trị số hoặc ngày thành một chuỗi ký tự theo một định dạng nào đó. Cú pháp của hàm là:

TEXT(value, format)

Trong đó, value là giá trị số hoặc ngày cần chuyển thành chuỗi ký tự, format là định dạng cần chuyển thành. Ví dụ:

TEXT(123456.78, "$#,##0.00") sẽ chuyển giá trị số 123456.78 thành chuỗi ký tự theo định dạng tiền tệ và trả về kết quả là “$123,456.78”.

Bạn có thể sử dụng hàm này để chuyển một giá trị số hoặc ngày thành một chuỗi ký tự theo một định dạng nào đó cho các mục đích khác nhau. Ví dụ: bạn có một bảng Đơn hàng với các trường Mã đơn hàng, Tên khách hàng, Số lượng, Đơn giá và Thành tiền. Bạn muốn tạo ra một trường mới là Thành tiền định dạng, có giá trị là Thành tiền được chuyển thành chuỗi ký tự theo định dạng tiền tệ. Bạn có thể sử dụng công thức sau:

TEXT([Thành tiền], "$#,##0.00")

Kết quả sẽ là Thành tiền được chuyển thành chuỗi ký tự theo định dạng tiền tệ. Ví dụ: nếu một đơn hàng có Thành tiền là 123456.78, thì Thành tiền định dạng sẽ là “$123,456.78”.

Hàm TRIM()

Hàm này dùng để loại bỏ các khoảng trắng thừa ở đầu và cuối của một chuỗi ký tự. Cú pháp của hàm là:

TRIM(text)

Trong đó, text là chuỗi ký tự cần loại bỏ các khoảng trắng thừa ở đầu và cuối. Ví dụ:

TRIM(" AppSheet ") sẽ loại bỏ các khoảng trắng thừa ở đầu và cuối của chuỗi ký tự " AppSheet " và trả về kết quả là “AppSheet”.

Bạn có thể sử dụng hàm này để loại bỏ các khoảng trắng thừa ở đầu và cuối của một chuỗi ký tự cho các mục đích khác nhau. Ví dụ: bạn có một bảng Khách hàng với các trường Tên khách hàng, Địa chỉ, Số điện thoại và Email. Bạn muốn tạo ra một trường mới là Tên khách hàng sửa, có giá trị là Tên khách hàng được loại bỏ các khoảng trắng thừa ở đầu và cuối. Bạn có thể sử dụng công thức sau:

TRIM([Tên khách hàng])

Kết quả sẽ là Tên khách hàng được loại bỏ các khoảng trắng thừa ở đầu và cuối. Ví dụ: nếu một khách hàng có Tên khách hàng là " Nguyễn Văn A ", thì Tên khách hàng sửa sẽ là “Nguyễn Văn A”.

Hàm UPPER()

Hàm này dùng để chuyển một chuỗi ký tự thành chữ hoa. Cú pháp của hàm là:

UPPER(text)

Trong đó, text là chuỗi ký tự cần chuyển thành chữ hoa. Ví dụ:

UPPER("AppSheet") sẽ chuyển chuỗi ký tự “AppSheet” thành chữ hoa và trả về kết quả là “APPSHEET”.

Bạn có thể sử dụng hàm này để chuyển một chuỗi ký tự thành chữ hoa cho các mục đích khác nhau. Ví dụ: bạn có một bảng Khách hàng với các trường Tên khách hàng, Địa chỉ, Số điện thoại và Email. Bạn muốn tạo ra một trường mới là Tên khách hàng hoa, có giá trị là Tên khách hàng được chuyển thành chữ hoa. Bạn có thể sử dụng công thức sau:

UPPER([Tên khách hàng])

Kết quả sẽ là Tên khách hàng được chuyển thành chữ hoa. Ví dụ: nếu một khách hàng có Tên khách hàng là “Nguyễn Văn A”, thì Tên khách hàng hoa sẽ là “NGUYỄN VĂN A”.

KẾT LUẬN

Trong bài viết này, chúng tôi đã giới thiệu cho bạn một số hàm thường dùng trong AppSheet, cùng với cách sử dụng và ví dụ minh họa. Bạn có thể áp dụng những hàm này để tạo ra các công thức phù hợp với nhu cầu của mình khi xây dựng các ứng dụng trên nền tảng AppSheet. Tuy nhiên, đây chỉ là một phần nhỏ trong số rất nhiều hàm có sẵn trong AppSheet. Bạn có thể tham khảo thêm tài liệu chính thức của AppSheet để tìm hiểu thêm về các hàm khác và cách sử dụng chúng. Chúc bạn thành công với AppSheet!

Nếu bạn muốn tìm một khóa học về Appsheet có thể tham khảo khóa học về Google Appsheet tại Link: https://www.hocappsheet.online/

Từ khóa: Cac hàm thông dụng trong Appsheet, các hàm trong Appsheet, hướng dẫn hàm select , hàm cơ bản trong Appsheet