Apps script google sheet là ngôn ngữ lập trình của google được kế thừa từ ngôn ngữ gốc là Java Script, được tích hợp vào các ứng dụng của google như  Calendar (Lịch), Contacts (Danh bạ), Documents (Tài liệu), Drive (Lưu trữ đám mây), Forms (Biểu mẫu), Gmail (Email), Group (Nhóm)...

 

 

Khóa học Script Google Sheet cấp tốc

Dành cho người đi làm

Học Apps Script Google Sheet toàn tập

Học xong Script Google sheet bạn làm được gì ?
Xây dựng được ứng dụng phần mềm quản lý cho công ty, xây dựng báo cáo động, vẽ biểu đồ, làm hệ thống gởi mail tự động cho khách hàng, hệ thống quản lý công việc, nhắc việc tự động.

 

Thông tin về khóa học online lập trình Script Google Sheet

+ Đặc biệt: @ 1 kèm 1.
+ Ai chia sẽ kiến thức cho bạn: tôi là Nhật 12 năm kinh nghiệm trong nghề làm phần mềm cho các công ty trong và ngoài nước
         Cick xem tham khảo tiểu sử.

+ Thời gian học 5 buổi / 1 buổi 1 giờ
+ Cách thức học: học qua google met , teamveew, zoom ...
+ Chi phí: 1.5 tr
+ Nộp học phí chia làm 2 đợt trong 1 tháng
       * Đợt 1 bắt đầu học.
       * Đợt 2 bắt đầu buổi thứ 2

 

Nội dung khóa học Script Google Sheet cơ bản:

Buổi 1,2:
     - Cách tạo 1 Macro, cách tạo hàm, cách tạo nút lệnh để gọi hàm
     - Cách khai báo biến, sử dụng vòng lặp, một số bài toán liên quan đến tư duy lập trình

Buổi 3: Sử dụng thư viện UI của SpreadsheetApp

  - alert:    Cách hiển thị thông báo, cách trả về giá trị hành động click chuột
  - prompt:    Cách lấy giá trị để xuất ra biến
  - showModalDialog:    Cách hiển thị giao diện tùy chọn html
  - showModelessDialog:    Cách hiển thị giao diện tùy chọn html (cửa sổ không phụ thuộc)
  - showSidebar:    Hiển thị thông báo Sidebar
  - createMenu:    Tạo menu theo lệnh tùy chọn

Buổi 4: Sử dụng các đối tượng Spreadsheet để tác động đến cell và sheet
Buổi 5: Tạo ứng dụng gởi mail và tạo app di động đặt hàng online

Cách để đăng ký khóa học Script Google Sheet:

* Bạn có thể liên hệ trực tiếp qua qua số điện thoại, Mr Nhật 0935999617(Zalo)

 

* Mục lục các bài học miễn phí với khóa học Scripts Google Sheet:

  1. Apps Script Google sheet là gì?
  2. Apps Script Google có thể làm được những gì?
  3. Làm app đầu tiên với câu thông báo bằng lệnh script google
  4. Khai báo biến với Apps script google sheet
  5. Tạo biến Sheet với Apps script google sheet
  6. Vòng lặp trong script google
  7. Chèn hàng vào google sheet với Apps script google sheet
  8. Set font cho ô với Apps script google sheet
  9. Set DataValidation cho ô với Apps script google sheet
  10. Hiển thị thông báo với Apps script google sheet:
  11. Hiển thị thông báo có ô nhập liệu script google
  12. HÀM GỞI MAIL với Apps script google sheet
  13. Sử dụng log để debug với Script google Sheet
  14. Filter và Foreach Script google Sheet

1. Google Apps Script là gì?

Google Apps Script - là 1 ngôn ngữ lập trình dựa trên ngôn ngữ lập trình gốc là Javascript.  Với công cụ này bạn có thể lập trình để thao tác, can thiệp trực tiếp đến các dịch vụ của Google, giúp tự động hóa đơn các quá trình làm thủ công.

* Các liên kết cần biết Apps Script Google:
https://www.google.com/script/start  - Quản lý dự án
https://docs.google.com/spreadsheets - Quản lý google sheet (như excel online)


2. Apps Script Google có thể làm được những gì?

    Thêm menu, dialogs, và thanh sidebar tùy chỉnh vào Google Docs, Sheets và Forms.
    Viết các hàm mở rộng hoặc các macros cho Google Sheets.
    Xuất bản Web Apps - độc lập hoặc tích hợp vào trang web của Google Sites.
    Tương tác với các dịch vụ khác của Google, bao gồm AdSense, Analytics, Lịch, Drive, Gmail và Bản đồ.
    Xây dựng các tiện ích bổ sung để mở rộng Google Docs, Sheets, Slides và Forms và xuất bản chúng lên cửa hàng Add-on.
    Chuyển đổi ứng dụng Android thành một tiện ích bổ sung Android để ứng dụng có thể trao đổi dữ liệu với Google Doc hoặc Sheet của người dùng trên thiết bị di động.
    Xây dựng Chat bot cho Hangout chat


Hiện tại Apps Scripts Google Script có thể lập trình để thao tác với hầu hết các dịch vụ của Google:

    Calendar (Lịch)
    Contacts (Danh bạ)
    Documents (Tài liệu)
    Drive (Lưu trữ đám mây)
    Forms (Biểu mẫu)
    Gmail (Email)
    Group (Nhóm)
    Language (Dịch)
    Maps (Bản đồ)
    Sites (Trang web)
    Slides (Trình chiếu)
    SpreadSheet (Bảng tính).

Sau đây mình gởi đến các bạn các đoạn code Apps Scripts Google Script cơ bản nhé:

3. Làm app đầu tiên với câu thông báo bằng lệnh script google

Ví dụ 1: Làm hiển thị thông báo ra Log
- B1: Truy cập đường dẫn : https://docs.google.com/spreadsheets/u/0/
- B2: Click bắt đầu bảng tính mới
- B3: Vào tiện ích mở rộng -> Script Apps
    Gõ dòng lệnh:

function myFunction()
{
  var cauthongbao="Xin chào các bạn, tôi là Nt Software, chuyên lập trình phần mềm !";
  Logger.log(cauthongbao);
}

- B4: Click nút chạy trên menu phí trên (run)

Ví dụ 2: Gán hàm đã viết cho nút lệnh
- B1: Truy cập đường dẫn : https://docs.google.com/spreadsheets/u/0/
- B2: Click bắt đầu bảng tính mới
- B3: Vào tiện ích mở rộng -> Script Apps
    Gõ dòng lệnh:

function myFunction()
{
  var ui = SpreadsheetApp.getUi(); // Same variations.
  var cauthongbao="Xin chào các bạn, tôi là Nt Software, chuyên lập trình phần mềm !";
  ui.alert(cauthongbao)  
}

- B4: Quay lại google sheet và thêm 1 đối tượng : vào chèn -> bản vẻ -> Tạo 1 hình chữ nút dạng nút lệnh
- B5: Click vào đối tượng vừa thêm, chọn dấu 3 chấm, nhập vào myFunction
- B6: click lại nút lệnh xem kết quả


 * myFunction: có thể đổi lại tên bất kỳ, chú ý không chứa dấu cách tên hàm.



4. Khai báo biến với Apps script google sheet

//   Biến kiễu chữ:
  var tenbien = Giá trị;
 Ví dụ:
 var hoten="Tran Van A";
  // In biến ra xem
Logger.log(hoten);

- Biến kiễu số
var so=10;
so=so+1;
  // In biến ra xem
Logger.log(so);

 

5. Tạo biến đối tượng để xử lý và tương tác với các đối tượng của Sheet Apps script google

 * Các đối tượng gồm SpreadsheetApp, Sheet ( 1  SpreadsheetApp có 1 hay nhiều sheet) , Cell (là 1 ô hay nhiều ô của 1 sheet).
    // Tạo biến app
    // Cách 1: tạo app hiện tại
    var app= SpreadsheetApp.getActive();
     // Cách 2: tạo app từ 1 file khác
     var app= SpreadsheetApp.openById('abc123456'); // thay thế lại ID file, mở file sheet ra tab mới sẽ xem được ID trên url

    // Tạo biến sheet (trong app có thể có nhiều sheet)
    // Cách 1: lấy sheet đang kích hoạt
    const sheet =app.getActiveSheet();
    // Cách 2 lấy sheet theo tên
    const sheet = app.getSheetByName("data");
   // Cách 3 lấy theo chỉ số index, tính từ 0, nếu có 3 sheet thì chỉ số là  0 , 1, 2
   
const sheet = app.getSheets()[0];
   

 // Thao tác với cell

   //*  Kích hoạt vị trí chọn, dùng để thay đổi màu hay tác động đến các thuộc tính cell
  
sheet.getRange('A1').activate();  
   //*  gán giá trị vào ô với địa chỉ
  sheet.getRange('A1').setValue("Giá_trị"); //
  
//*  Gán giá trị vào ô đang chọn
  sheet .getCurrentCell().setValue('4'); // Gán giá trị cho ô đang chọn
  Logger.log('Noi dung in'); //Ghi nội dung log, chỉ xem được tại trình soạn lệnh

 // Lấy giá trị vùng chọn ra biến theo địa chỉ

   // Lấy giá trị 1 ô duy nhất
    var data = sheet.getRange(1,1).getValue();
    Logger.log(data); // xem

   // Lấy giá trị nhiều ô giá trị sẽ lấy về được đưa ra biến mảng
  var data = sheet.getRange("A1:D2").getValues();
 Ví dụ:
    var data = sheet.getRange("B2:B6").getValues();
     Logger.log(data);

  // Lấy giá trị vùng địa chỉ với tham số động là xác định dòng cuối có chứa dữ liệu
  var data = sheet.getRange("A1:D"+ sheet.getLastRow()).getValues();

 // Lấy giá trị toàn bộ sheet đứa ra biến

  const data = sheet.getDataRange().getValues();
 

Tham khảo các hàm script về đối tượng ô: https://developers.google.com/apps-script/reference/spreadsheet/range?hl=vi



6. Vòng lặp  với Apps script google sheet

  var sheet = SpreadsheetApp.getActiveSheet(); // lấy sheet hiện tại được vào biến
  var data = sheet.getDataRange().getValues(); //lấy giá trị hàng (trong gồm các ô) đưa vào biến mãng
  for (var i = 0; i < data.length; i++) {  // lặp
    Logger.log('Product name: ' + data[i][0]); //in ra
    Logger.log('Product number: ' + data[i][1]);
  }


7. Chèn hàng (thêm 1 dòng) vào google sheet với Apps script google sheet

var sheet = SpreadsheetApp.getActiveSheet();
sheet.appendRow(['Cotton Sweatshirt XL', 'css004']);
sheet.appendRow(['Đã gởi mail','XXX','']);

 

 

8. Set font cho ô với Apps script google sheet

 var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getSheets()[0];
  var cell = sheet.getRange('B2:C2');
  cell.setFontStyle('italic');
 

 

9. Set DataValidation cho ô với Apps script google sheet


// 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);

//=============================


10. Hiển thị thông báo với Apps script google sheet:

var ui = SpreadsheetApp.getUi(); // Same variations.

  var result = ui.alert(
     'Please confirm',
     'Are you sure you want to continue?',
      ui.ButtonSet.YES_NO);

  // Process the user's response.
  if (result == ui.Button.YES) {
    // User clicked "Yes".
    ui.alert('Confirmation received.');
  } else {
    // User clicked "No" or X in the title bar.
    ui.alert('Permission denied.');
  }
 


11. Hiển thị hộp thoại có ô nhập liệu với Apps script google sheet

var ui = SpreadsheetApp.getUi(); // Same variations.

  var result = ui.prompt(
      'Let\'s get to know each other!',
      'Please enter your name:',
      ui.ButtonSet.OK_CANCEL);

  // Process the user's response.
  var button = result.getSelectedButton();
  var text = result.getResponseText();
  if (button == ui.Button.OK) {
    // User clicked "OK".
    ui.alert('Your name is ' + text + '.');
  } else if (button == ui.Button.CANCEL) {
    // User clicked "Cancel".
    ui.alert('I didn\'t get your name.');
  } else if (button == ui.Button.CLOSE) {
    // User clicked X in the title bar.
    ui.alert('You closed the dialog.');
  }

 

12. HÀM GỞI MAIL với Apps script google sheet

function SendAnEmail() {
  // gán email nhận
  var email = 'xxxxx@yahoo.com'
  // Tiều đề gởi mail
  var subject = 'This is my first script!';
  // Nội dung gởi mail
  var body = 'Hello, world!';
  // Send an email
  GmailApp.sendEmail(email, subject, body);
}

Xem video hướng dẫn gởi mail

 

 

 

13. Filter và Foreach dữ liệu trong Script Google Sheet

function getData() {
  var app= SpreadsheetApp.getActive();
  const sheet = app.getSheetByName("data");  //data tên sheet hay có thể dùng  app.getActiveSheet()
  const data = sheet.getDataRange().getValues();

  //Logger.log(data);
  //console.log(data); //in ra
 
  const list = data.filter(rec => rec[2]=='10' && rec[3]>=1990  )
 
  if(list.length>0)
  {

    list.forEach(
      rec =>{
          Logger.log(rec[1]);
      }

    )
  }

  Logger.log(list.length);
}

 
Cách viết ForEach đơn giản hơn

const list = data.filter(function(rec){ rec[2]=='10' && rec[3]>=1990  }   )

 

list.forEach(function(row)
  {
      Logger.log(row[0]  );

  }

 

 

14. Log với Script Google Sheet

function getData() {
  var app= SpreadsheetApp.getActive();
  const sheet = app.getSheetByName("data");
  const data = sheet.getDataRange().getValues();

  //Logger.log(data);
  console.log(data); //in ra
 
}

 In xem giá trị.

 

 

 

15. Sử dụng Trigger với Script Google Sheet

...

 

============== THANK YOU ==============


 


  

 


Một số video hướng dẫn làm ứng dụng app lập trình với google script

1. Ứng dụng gởi mail tự động

2. ....

 

 

Cảm ơn đã xem, đã có 17,319 lượt xem.
Thông báo:

Học lập trình khác
Tag tìm kiếm:

apps script google sheet

Thông tin liên hệ

Zalo 0935 999617

Zalo 0972 13 14 19