Trình đơn tuỳ chỉnh trong Google Workspace

Tập lệnh có thể mở rộng một số sản phẩm của Google bằng cách thêm các phần tử giao diện người dùng. Khi nhấp vào, các phần tử này sẽ thực thi một hàm Google Apps Script. Ví dụ phổ biến nhất là chạy một tập lệnh từ một mục trong trình đơn tuỳ chỉnh trong Google Tài liệu, Google Trang tính, Google Trang trình bày hoặc Google Biểu mẫu. Tuy nhiên, các hàm tập lệnh cũng có thể được kích hoạt bằng cách nhấp vào hình ảnh và bản vẽ trong Trang tính.

Trình đơn tuỳ chỉnh trong Tài liệu, Trang tính, Trang trình bày hoặc Biểu mẫu

Apps Script có thể thêm trình đơn mới trong Tài liệu, Trang tính, Trang trình bày hoặc Biểu mẫu, với mỗi mục trong trình đơn được liên kết với một hàm trong tập lệnh. (Trong Biểu mẫu, trình đơn tuỳ chỉnh chỉ hiển thị cho người chỉnh sửa mở biểu mẫu để sửa đổi, chứ không hiển thị cho người dùng mở biểu mẫu để phản hồi.)

Chỉ tập lệnh được liên kết mới có thể tạo trình đơn. Để hiển thị trình đơn khi người dùng mở một tệp, hãy viết mã trình đơn trong hàm onOpen.

Ví dụ sau đây cho thấy cách thêm một trình đơn có một mục, tiếp theo là dòng phân cách trực quan, sau đó là trình đơn con chứa một mục khác. Khi người dùng chọn một trong hai mục trong trình đơn, một hàm tương ứng sẽ mở hộp thoại cảnh báo. Để biết thêm thông tin về các loại hộp thoại mà bạn có thể mở, hãy xem hướng dẫn về hộp thoại và thanh bên.

function onOpen() {
  const ui = SpreadsheetApp.getUi();
  // Or DocumentApp, SlidesApp or FormApp.
  ui.createMenu('Custom Menu')
      .addItem('First item', 'menuItem1')
      .addSeparator()
      .addSubMenu(ui.createMenu('Sub-menu')
          .addItem('Second item', 'menuItem2'))
      .addToUi();
}

function menuItem1() {
  SpreadsheetApp.getUi() // Or DocumentApp, SlidesApp or FormApp.
      .alert('You clicked the first menu item!');
}

function menuItem2() {
  SpreadsheetApp.getUi() // Or DocumentApp, SlidesApp or FormApp.
      .alert('You clicked the second menu item!');
}

Một tài liệu, bảng tính, bản trình bày hoặc biểu mẫu chỉ có thể chứa một trình đơn có tên đã cho. Nếu cùng một tập lệnh hoặc một tập lệnh khác thêm một trình đơn có cùng tên, thì trình đơn mới sẽ thay thế trình đơn cũ. Bạn không thể xoá trình đơn khi tệp đang mở, mặc dù bạn có thể viết hàm onOpen để bỏ qua trình đơn trong tương lai nếu một thuộc tính nhất định được đặt.

Tiện ích bổ sung cho trình chỉnh sửa cũng có thể có các mục trong trình đơn, nhưng sử dụng các quy tắc đặc biệt về cách xác định các mục đó.

Hình ảnh và bản vẽ có thể nhấp trong Trang tính

Bạn cũng có thể chỉ định một hàm Apps Script cho hình ảnh hoặc bản vẽ trong Trang tính, miễn là tập lệnh được liên kết với bảng tính. Ví dụ sau đây cho thấy cách thiết lập.

  1. Trong Trang tính, hãy chọn mục trong trình đơn Tiện ích > Apps Script để tạo một tập lệnh được liên kết với bảng tính.
  2. Xoá mọi mã trong trình chỉnh sửa tập lệnh rồi dán mã bên dưới.
function showMessageBox() {
  SpreadsheetApp.getUi().alert('You clicked it!');
}
  1. Quay lại Trang tính rồi chèn hình ảnh hoặc bản vẽ bằng cách chọn Chèn > Hình ảnh hoặc Chèn > Bản vẽ.
  2. Sau khi chèn hình ảnh hoặc bản vẽ, hãy nhấp vào hình ảnh hoặc bản vẽ đó. Một bộ chọn trình đơn thả xuống nhỏ sẽ xuất hiện ở góc trên cùng bên phải. Nhấp vào bộ chọn đó rồi chọn Chỉ định tập lệnh.
  3. Trong hộp thoại xuất hiện, hãy nhập tên của hàm Apps Script mà bạn muốn chạy, không có dấu ngoặc đơn — trong trường hợp này, hãy nhập showMessageBox. Nhấp vào OK.
  4. Nhấp lại vào hình ảnh hoặc bản vẽ. Hàm sẽ thực thi.

Việc thực thi tập lệnh chỉ được kích hoạt bằng cách nhấp vào hình ảnh hoặc bản vẽ trong trình duyệt web. Tập lệnh không thực thi nếu hình ảnh hoặc bản vẽ được nhấp trên thiết bị di động.