Hướng dẫn how do i link a google spreadsheet to a app script? - làm cách nào để liên kết bảng tính google với tập lệnh ứng dụng?

Tập lệnh Google ứng dụng cho phép bạn làm những điều mới và tuyệt vời với Google Sheets. Bạn có thể sử dụng tập lệnh ứng dụng để thêm các menu, hộp thoại tùy chỉnh và thanh bên vào Google Sheets. Nó cũng cho phép bạn viết các chức năng tùy chỉnh cho các tờ, cũng như tích hợp các tờ với các dịch vụ khác của Google như Lịch, Drive và Gmail.

Hầu hết các tập lệnh được thiết kế cho Google Sheets thao tác các mảng để tương tác với các ô, hàng và cột trong một bảng tính. Nếu bạn không quen thuộc với các mảng trong JavaScript, Codecademy sẽ cung cấp một mô -đun đào tạo tuyệt vời cho các mảng. (Lưu ý rằng khóa học này không được phát triển bởi và không liên kết với Google.)

Để giới thiệu nhanh về việc sử dụng tập lệnh ứng dụng với Google Sheets, hãy xem Hướng dẫn khởi động nhanh 5 phút cho các macro, menu và các chức năng tùy chỉnh.

Bắt đầu

Tập lệnh ứng dụng bao gồm các API đặc biệt để cho phép bạn lập trình, đọc và chỉnh sửa Google Sheets. Tập lệnh ứng dụng có thể tương tác với Google Sheets theo hai cách rộng: mọi tập lệnh đều có thể tạo hoặc sửa đổi bảng tính nếu người dùng của tập lệnh có quyền thích hợp cho bảng tính và tập lệnh cũng có thể được liên kết với bảng tính, cung cấp các khả năng đặc biệt của tập lệnh để thay đổi Giao diện người dùng hoặc phản hồi khi bảng tính được mở. Để tạo tập lệnh bị ràng buộc, hãy chọn phần mở rộng> tập lệnh ứng dụng từ trong Google Sheets.Extensions > Apps Script from within Google Sheets.

Dịch vụ bảng tính coi Google Sheets là một lưới, hoạt động với các mảng hai chiều. Để lấy dữ liệu từ bảng tính, bạn phải truy cập vào bảng tính nơi lưu trữ dữ liệu, hãy lấy phạm vi trong bảng tính chứa dữ liệu và sau đó nhận được các giá trị của các ô. Tập lệnh ứng dụng tạo điều kiện truy cập vào dữ liệu bằng cách đọc dữ liệu có cấu trúc trong bảng tính và tạo các đối tượng JavaScript cho chúng.

Đọc dữ liệu

Giả sử bạn có một danh sách các tên sản phẩm và số sản phẩm mà bạn lưu trữ trong bảng tính, như trong hình ảnh dưới đây.

Hướng dẫn how do i link a google spreadsheet to a app script? - làm cách nào để liên kết bảng tính google với tập lệnh ứng dụng?

Ví dụ dưới đây cho thấy cách truy xuất và ghi nhật ký tên sản phẩm và số sản phẩm.

function logProductInfo() {
  var sheet = SpreadsheetApp.getActiveSheet();
  var data = sheet.getDataRange().getValues();
  for (var i = 0; i < data.length; i++) {
    Logger.log('Product name: ' + data[i][0]);
    Logger.log('Product number: ' + data[i][1]);
  }
}

Xem các bản ghi

Để xem dữ liệu đã được ghi lại, ở đầu trình chỉnh sửa tập lệnh, nhấp vào nhật ký thực thi.Execution log.

Viết dữ liệu

Để lưu trữ dữ liệu, chẳng hạn như tên và số sản phẩm mới vào bảng tính, hãy thêm mã sau vào cuối tập lệnh.

function addProduct() {
  var sheet = SpreadsheetApp.getActiveSheet();
  sheet.appendRow(['Cotton Sweatshirt XL', 'css004']);
}

Mã trên nối một hàng mới ở dưới cùng của bảng tính, với các giá trị được chỉ định. Nếu bạn chạy chức năng này, bạn sẽ thấy một hàng mới được thêm vào bảng tính.

Các menu tùy chỉnh và giao diện người dùng

Bạn có thể tùy chỉnh Google Sheets bằng cách thêm các menu tùy chỉnh, hộp thoại và thanh bên. Để tìm hiểu những điều cơ bản của việc tạo ra các menu, hãy xem Hướng dẫn về menu. Để tìm hiểu về việc tùy chỉnh nội dung của hộp thoại, hãy xem Hướng dẫn về Dịch vụ HTML.

Bạn cũng có thể gắn hàm tập lệnh vào hình ảnh hoặc vẽ trong bảng tính; Hàm sẽ thực thi khi người dùng nhấp vào hình ảnh hoặc bản vẽ. Để tìm hiểu thêm, hãy xem hình ảnh và bản vẽ trong Google Sheets.

Nếu bạn dự định xuất bản giao diện tùy chỉnh của mình như một phần của tiện ích bổ sung, hãy làm theo hướng dẫn kiểu để phù hợp với kiểu dáng và bố cục của trình soạn thảo Google Sheets.

Kết nối với Google Forms

Tập lệnh ứng dụng cho phép bạn kết nối Google Forms với Google Sheets thông qua các biểu mẫu và dịch vụ bảng tính. Tính năng này có thể tự động tạo biểu mẫu Google dựa trên dữ liệu trong bảng tính. Tập lệnh ứng dụng cũng cho phép bạn sử dụng các kích hoạt, chẳng hạn như onFormSubmit để thực hiện một hành động cụ thể sau khi người dùng phản hồi biểu mẫu. Để tìm hiểu thêm về việc kết nối Google Sheets với Google Forms, hãy thử các phản hồi quản lý cho Google Forms 5 phút.

Định dạng

Lớp Range có các phương pháp như setBackground(color) để truy cập và sửa đổi định dạng của một ô hoặc phạm vi ô. Ví dụ sau đây cho thấy cách bạn có thể đặt kiểu phông chữ của một phạm vi:

function formatMySpreadsheet() {
  // Set the font style of the cells in the range of B2:C2 to be italic.
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getSheets()[0];
  var cell = sheet.getRange('B2:C2');
  cell.setFontStyle('italic');
}

Xác nhận dữ liệu

Tập lệnh ứng dụng cho phép bạn truy cập các quy tắc xác thực dữ liệu hiện có trong Google Sheets hoặc tạo các quy tắc mới. Chẳng hạn, mẫu sau đây cho thấy cách đặt quy tắc xác thực dữ liệu chỉ cho phép các số từ 1 đến 100 trên ô.

function validateMySpreadsheet() {
  // Set a rule for the cell B4 to be a number between 1 and 100.
  var cell = SpreadsheetApp.getActive().getRange('B4');
  var rule = SpreadsheetApp.newDataValidation()
     .requireNumberBetween(1, 100)
     .setAllowInvalid(false)
     .setHelpText('Number must be between 1 and 100.')
     .build();
  cell.setDataValidation(rule);
}

Để biết thêm chi tiết về việc làm việc với các quy tắc xác thực dữ liệu, xem SpreadsheetApp.newDataValidation(), DataValidationBuilder

function addProduct() {
  var sheet = SpreadsheetApp.getActiveSheet();
  sheet.appendRow(['Cotton Sweatshirt XL', 'css004']);
}
0

Biểu đồ

Tập lệnh ứng dụng cho phép bạn nhúng biểu đồ vào bảng tính đại diện cho dữ liệu trong một phạm vi cụ thể. Ví dụ sau đây tạo ra một biểu đồ thanh nhúng, giả sử bạn có dữ liệu có thể lập biểu đồ trong các ô

function addProduct() {
  var sheet = SpreadsheetApp.getActiveSheet();
  sheet.appendRow(['Cotton Sweatshirt XL', 'css004']);
}
1:

function newChart() {
  // Generate a chart representing the data in the range of A1:B15.
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getSheets()[0];

  var chart = sheet.newChart()
     .setChartType(Charts.ChartType.BAR)
     .addRange(sheet.getRange('A1:B15'))
     .setPosition(5, 5, 0, 0)
     .build();

  sheet.insertChart(chart);
}

Để tìm hiểu thêm về việc nhúng biểu đồ vào bảng tính của bạn, hãy xem

function addProduct() {
  var sheet = SpreadsheetApp.getActiveSheet();
  sheet.appendRow(['Cotton Sweatshirt XL', 'css004']);
}
2 và các nhà xây dựng biểu đồ cụ thể, chẳng hạn như
function addProduct() {
  var sheet = SpreadsheetApp.getActiveSheet();
  sheet.appendRow(['Cotton Sweatshirt XL', 'css004']);
}
3.

Chức năng tùy chỉnh trong Google Sheets

Một chức năng tùy chỉnh tương tự như hàm bảng tính tích hợp như

function addProduct() {
  var sheet = SpreadsheetApp.getActiveSheet();
  sheet.appendRow(['Cotton Sweatshirt XL', 'css004']);
}
4 ngoại trừ việc bạn xác định hành vi của các chức năng với tập lệnh ứng dụng. Ví dụ: bạn có thể tạo một hàm tùy chỉnh,
function addProduct() {
  var sheet = SpreadsheetApp.getActiveSheet();
  sheet.appendRow(['Cotton Sweatshirt XL', 'css004']);
}
5, chuyển đổi giá trị từ inch thành milimet, sau đó sử dụng công thức trong bảng tính của bạn bằng cách nhập
function addProduct() {
  var sheet = SpreadsheetApp.getActiveSheet();
  sheet.appendRow(['Cotton Sweatshirt XL', 'css004']);
}
6 hoặc
function addProduct() {
  var sheet = SpreadsheetApp.getActiveSheet();
  sheet.appendRow(['Cotton Sweatshirt XL', 'css004']);
}
7 vào ô.

Để tìm hiểu thêm về các chức năng tùy chỉnh, hãy thử các menu và chức năng tùy chỉnh nhanh 5 phút hoặc xem hướng dẫn chuyên sâu hơn về các chức năng tùy chỉnh.

Macro

Macro là một cách khác để thực thi mã tập lệnh ứng dụng từ UI của Google Sheets. Không giống như các chức năng tùy chỉnh, bạn kích hoạt chúng bằng phím tắt hoặc thông qua menu Google Sheets. Để biết thêm thông tin, hãy xem các macro của Google Sheets.

Bổ trợ cho Google Sheets

Các tiện ích bổ sung là các dự án tập lệnh ứng dụng được đóng gói đặc biệt chạy bên trong Google Sheets và có thể được cài đặt từ cửa hàng bổ sung Google Sheets. Nếu bạn đã phát triển một tập lệnh cho Google Sheets và muốn chia sẻ nó với thế giới, tập lệnh ứng dụng cho phép bạn xuất bản tập lệnh của mình dưới dạng tiện ích bổ sung để người dùng khác có thể cài đặt nó từ cửa hàng bổ trợ.

Gây nên

Các tập lệnh được liên kết với tệp Google Sheets có thể sử dụng các kích hoạt đơn giản như các chức năng

function addProduct() {
  var sheet = SpreadsheetApp.getActiveSheet();
  sheet.appendRow(['Cotton Sweatshirt XL', 'css004']);
}
8 và
function addProduct() {
  var sheet = SpreadsheetApp.getActiveSheet();
  sheet.appendRow(['Cotton Sweatshirt XL', 'css004']);
}
9 để tự động trả lời khi người dùng chỉnh sửa truy cập vào bảng tính mở hoặc chỉnh sửa bảng tính.

Giống như các trình kích hoạt đơn giản, các bộ kích hoạt có thể cài đặt cho phép Google Sheets tự động chạy một chức năng khi một sự kiện nhất định xảy ra. Tuy nhiên, các trình kích hoạt có thể cài đặt được cung cấp sự linh hoạt hơn so với các bộ kích hoạt đơn giản và hỗ trợ các sự kiện sau: Mở, chỉnh sửa, thay đổi, gửi biểu mẫu và điều khiển theo thời gian (đồng hồ).