AS01 : หลักการเขียนโปรแกรม Google Apps Script และเซอร์วิส Spreadsheet
AS01 หลักการเขียนโปรแกรม Google Apps Script และเซอร์วิส Spreadsheet

คอร์ส : (AS01) หลักการเขียนโปรแกรม Google Apps Script และ เซอร์วิส Spreadsheet

ระยะเวลาการอบรม : 12-18 ชม. (แล้วแต่พื้นฐานผู้เรียนและโปรเจกต์ภายในคอร์สที่ผู้เรียนเลือก)

ค่าบริการอบรม

  1. คนเดียว : 500บ./ชม./คน (ออนไลน์สอนสด)
  2. กลุ่ม 2 คน : 350บ./ชม./คน (ออนไลน์สอนสด) - หากสนใจ แต่ไม่มีเพื่อนเรียนด้วย แจ้งความต้องการไว้ได้
  3. แบบกลุ่มใหญ่ออนไซต์ : โปรดติดต่อเพื่อขอใบเสนอราคาตามช่องทางด้านล่าง

พื้นฐานผู้เข้าอบรม : เคยใช้งาน Gmail, Google Sheets, Google Drive มาบ้าง

ที่มา

Google Apps ประกอบไปด้วยแอพพลิเคชั่นหลายตัว เช่น Google Sheets, Google Docs, Google Slides, Gmail, Google Calendar, Google Meet, Google Keep, Google Jamboard, Google Classroom, Google Home, Google Map เป็นต้น ทั้งหมด รองรับการทำงานออฟฟิศในยุคใหม่ ที่มีทั้งแบบ Onsite และ Onlineได้เป็นอย่างดี โดยเฉพาะการทำงานแบบ Online

นอกจากการใช้งาน Google Apps แบบปกติ เรายังสามารถเขียนโปรแกรมโดยใช้ Google Apps Script (GAS) หรือ Apps Script เพื่อทำให้การใช้งาน Google Apps เป็นไปอย่างสะดวกและรวดเร็ว ทำงานที่ซับซ้อนและมีปริมาณมากได้เป็นอย่างดี กำหนดเวลาการสั่งงานได้ สร้างเป็นระบบงานได้ สร้างเป็น Web App ได้ เรียกได้ว่า ถ้าเราเขียนโปรแกรมด้วย Apps Script เป็น จะสามารถทำงานอะไรได้หลากหลายอย่างมาก

ขอแบ่งการใช้ Apps Script ออกเป็น 4 ข้อดังนี้ เพื่อให้เห็นภาพรวมที่ชัดเจนขึ้นว่า Apps Script ทำอะไรได้บ้าง

1. เขียน Apps Script เพื่อใช้หรือประสานงาน Google Apps - Apps Script สามารถเรียกใช้แอพต่างๆของ Google ได้ ซึ่งในภาษาเขียนโปรแกรมเราจะเรียกว่า การเรียกใช้เซอร์วิส เช่น การเรียกใช้เซอร์วิส Spreadsheet เพื่อเข้าไปควบคุม Google Sheets , เรียกใช้เซอร์วิส Drive เพื่อเข้าไปควบคุม Google Drive เป็นต้น

Apps Script สามารถเรียกเซอร์วิสข้ามไปข้ามมาได้ จึงทำให้เราสามารถประสานการใช้ Google Apps เข้าด้วยกันได้ ยกตัวอย่าง เช่น ส่งออกอีเว้นต์ทั้งปีที่อยู่ใน Google Calendar มาไว้ที่ Google Sheets หรือในทางกลับกัน สร้างอีเว้นต์ลงใน Google Calendar โดยดึงข้อมูลมาจาก Google Sheets, ใช้รวมข้อมูลจาก Google Sheets หลายๆไฟล์ที่อยู่ใน Google Drive หรือในทางกลับกัน ส่งออกข้อมูลจาก Google Sheets ไปแยกเก็บไว้ในไฟล์ Google Sheets หลายๆไฟล์ แล้วเก็บไว้ใน Google Drive , สร้างแคตาล็อกสินค้าใน Google Doc โดยดึงภาพมาจาก Google Driveและดึงข้อมูลสินค้าที่อยู่ใน Google Sheets, สร้างบัตรเข้างาน โดยดึงภาพมาจาก Google Drive ใช้เทมเพลตที่อยู่ใน Google Slides และดึงข้อมูลมาจาก Google Sheets เป็นต้น

2. เขียน Apps Script เพื่อสร้าง Web App – ระบบของ Google สามารถสร้างเป็น Web App ได้ แต่เราต้องใช้มากกว่า Apps Script เพราะการสร้าง Web App ต้องใช้ HTML สร้างหน้าเว็บ ใช้ CSS จัดรูปแบบให้หน้าเว็บ และใช้ Javascript โต้ตอบกับผู้ใช้งาน ส่วน Apps Script จะทำงานในฝั่งของเซิร์ฟเวอร์ของ Google เช่น ใช้เขียนข้อมูลลง Google Sheets, เขียนไฟล์ลงในGoogle Drive เป็นต้น

การสร้าง Web App ด้วย Apps Script มีข้อดีที่ขึ้นระบบง่ายมาก แต่ข้อเสียก็คือ Editor ในการเขียนโปรแกรมไม่เก่งเท่าไร เราจึงต้องใช้โปรแกรมอื่นในการเขียนโปรแกรมร่วมด้วย เช่น Visual Studio Code เป็นต้น นอกจากนี้ก็ถูกจำกัดด้วยนโยบายของ Google จึงอาจใช้ทำ Web App ที่มีขนาดใหญ่ไม่ได้ แต่ก็เพียงพอมากๆ สำหรับการใช้งานที่ผู้ใช้งานไม่เยอะจนเกินไป ข้อมูลไม่มากจนเกินไป ยกตัวอย่าง Web App ที่สร้างด้วย Apps Script เช่น

หน้าเว็บรับสมัครคอร์สออนไลน์ ที่ต้องมีการเลือกคอร์ส คำนวณค่าคอร์ส อัปโหลดไฟล์ และมีการส่งอิเมล์อัตโนมัติ เมื่อมีการส่งฟอร์ม , ใช้สร้าง Sidebar ใน Google Sheets เราสามารถสร้าง Sidebar ขึ้นมาเองได้ ซึ่งใช้เทคนิคเดียวกับการสร้าง Web App เพราะแท้จริงแล้ว Sidebar ก็คือ หน้าเว็บหน้าหนึ่ง เพียงแต่มีขนาดเล็ก , ระบบข้อมูลลูกค้า ที่สามารถค้นหา, แสดง, แก้ไข, ลบ และเพิ่มข้อมูลลูกค้าใหม่ได้ ระบบลักษณะนี้ เราจะเรียกว่า CRUD (Create-Read-Update-Delete) , สร้าง Dynamic report (สร้าง Data Visualization หรือ การวิเคราะห์ข้อมูลให้ออกมาเป็นภาพ) โดยดึงข้อมูลมาจาก Google Sheets แล้วแสดงเป็นชาร์ตแบบต่างๆ โดยที่สามารถตอบโต้กับผู้ใช้งานได้ เป็นต้น

3. เขียน Apps Script เพื่อสร้างระบบ Workflow - Workflow หรือ ระบบงานที่มีลำดับในการสั่งงาน มีผู้ใช้ มีผู้อนุมัติขั้นตอนต่างๆจึงจะไปต่อได้ หรืออาจถูกตีกลับหากไม่อนุมัติ เป็นต้น Apps Script สามารถทำระบบ Workflow ได้เป็นอย่างดี ด้วยความสามารถในการประสาน Google Apps เข้าด้วยกัน และสามารถทำ Web App ได้ด้วย บางระบบ Workflow ก็ไม่จำเป็นต้องทำหน้า Web App บางระบบก็จำเป็น ฉะนั้นจึงแยกระบบงาน Workflow ออกมาเป็น อีกประเภทงานหนึ่ง ยกตัวอย่าง Workflow ที่สร้างด้วย Apps Script เช่น

ระบบขออนุมัติการลางาน ที่ต้องขออนุมัติหัวหน้างาน ถ้าอนุมัติหรือไม่อนุมัติก็จะส่งอิเมล์แจ้ง และถ้าอนุมัติก็จะไปขั้นตอนต่อไป ก็คือส่งอิเมล์หรือเขียนข้อมูลลงในระบบของฝ่ายบุคคล , ยกตัวอย่างระบบงาน Workflow ที่สร้างด้วย Apps Script เช่น ระบบขออนุมัติการจัดซื้อ ผู้ขอจัดซื้อกรอกข้อมูลการสั่งซื้อที่หน้าเว็บ ข้อมูลการสั่งซื้อที่ไม่เกิน 5,000 จะถูกส่งไปหาผู้ช่วยผู้จัดการคนเดียว ถ้าเกิน5,000จะส่งไปให้ผู้ช่วยผู้จัดการอนุมัติก่อน จากนั้นจึงส่งไปให้ผู้จัดการอนุมัติด้วย เป็นต้น

4. เขียน Apps Script เพื่อใช้งาน API - Apps Script สามารถส่งคำขอไปยังบริการ API ต่างๆได้ เช่น การใช้บริการ Line API ซึ่งให้บริการส่งข้อความบน Line บริการนี้ทำให้เราสามารถนำข้อมูลจาก Google Apps เช่น ข้อมูลที่อยู่ใน Google Sheet หรือใน Google Calendar ส่งไปเป็นข้อความใน Line ได้ เป็นต้น

ในคอร์สนี้ เราจะได้เรียนรู้ หลักการเขียนโปรแกรมโดยใช้ Google Apps Script และ การเขียนโปรแกรมเพื่อเรียกใช้เซอร์วิสSpreadsheet ซึ่งเป็นเซอร์วิสที่ใช้บ่อยมากที่สุด และถูกใช้เสมอ

ไม่จำเป็นต้องเป็นโปรแกรมเมอร์ก็เข้ามาเรียนคอร์สนี้ได้ เพราะผู้ที่เคยเข้าอบรมคอร์สนี้ ส่วนใหญ่เป็นพนักงานบริษัท อยู่ฝ่ายบุคคลบ้าง ฝ่ายบัญชีบ้าง ฝ่ายการตลาดบ้าง ทั้งนี้ผู้เข้าอบรมต้องการนำ Apps Script ไปใช้ในงานของตัวเอง เพื่อให้สามารถใช้ Google Apps ได้อย่างมีประสิทธิภาพมากขึ้น โดยเฉพาะกับ Google Sheets

ประโยชน์ที่จะได้รับ :

  1. เข้าใจหลักการเขียนโปรแกรมด้วย Apps Script ที่สำคัญ
  2. เข้าใจแนวคิด OOP ในการเขียนโปรแกรมเชิงวัตถุ
  3. เขียนโปรแกรม ใช้งานเซอร์วิส Spreadsheet ที่สำคัญได้
  4. เขียนโปรแกรม ส่งอิเมล์โดยใช้เซอร์วิส Email ได้

เนื้อหา :

Part I : หลักการเขียนโปรแกรม

  1. การสร้างโปรเจ็ค Apps Script
    1. โปรเจ็คแบบStandalone Project
    2. โปรเจ็คแบบEmbbed Project
  2. หน้าจอ Apps Script
  3. กระบวนโดยรวม ในการเขียนโปรแกรม
    1. เขียนโปรแกรมอย่างง่าย เพื่อให้เห็นภาพรวม
      1. การสร้างฟังก์ชั่น (function)
      2. คอมเม้นต์ 2 แบบ
      3. การแสดงผลการรันเบื้องต้นด้วยคลาส Logger หรือ console
      4. การรันฟังก์ชั่น
    2. คีย์ลัดที่สำคัญ
  4. ชนิดข้อมูล(Data types) และ โอเปอเรเตอร์(Operators)
    1. การประกาศตัวแปร
      1. Assignment operators (เครื่องหมายกำหนดค่า)
    2. การตรวจสอบชนิดข้อมูลด้วย typeof
    3. ข้อมูลชนิด String (อักขระ)
      1. การประกาศตัวแปรชนิด String
      2. การใช้ Single quotes
      3. การใช้ Double quotes
      4. การใช้ Backtick
        1. การพิมพ์อักษร Unicode โดยใช้คีย์บอร์ด
      5. โอเปอเรเตอร์ของข้อมูลชนิด String
      6. การใช้ \n (LF) และ \t และ \r(CR)
    4. ข้อมูลชนิด Number (ตัวเลข)
      1. การประกาศตัวแปรชนิด Number
      2. โอเปอเรเตอร์ของข้อมูลชนิด Number
        • Math operators (เครื่องหมายในการคำนวณตัวเลข)
        • Assignment operators (เครื่องหมายกำหนดค่า)
      3. การคำนวนตัวเลขด้วยวัตถุ Math
      4. การใช้งานฟังก์ชั่น Number
    5. ข้อมูลชนิด Boolean (บูลลีน)
      1. การประกาศตัวแปรชนิด Boolean
      2. โอเปอเรเตอร์ของข้อมูลชนิดBoolean
        1. การใช้เครื่องหมายเท่า 2 ตัว
        2. การใช้เครื่องหมายเท่า 3 ตัว
        3. Logical Operators (เครื่องหมายเชื่อมบูลลีน)
    6. ข้อมูลชนิด Boolean (บูลลีน)
      1. การประกาศตัวแปรชนิด Boolean
      2. โอเปอเรเตอร์ของข้อมูลชนิดBoolean
        1. การใช้เครื่องหมายเท่า 2 ตัว
        2. การใช้เครื่องหมายเท่า 3 ตัว
        3. Logical Operators (เครื่องหมายเชื่อมบูลลีน)
    7. รู้จักกับข้อมูลชนิด Object (วัตถุ)
      1. การประกาศตัวแปรชนิด Object
      2. Keys และ Values
      3. การสร้าง Key และการกำหนด Value ให้กับ Key
      4. การใช้ for/in กับข้อมูลชนิด Object
    8. Object ใน Array
      1. ตัวแปร Object ใน Array
  5. การประกาศตัวแปรแบบต่างๆ
    1. การประกาศตัวแปรแบบGlobal Scope, Function Scope และ Block Scope
    2. การประกาศตัวแปรแบบlet, const, var
  6. การจัดการเงื่อนไข
    1. การใช้ if, else if, else
    2. การใช้ switch
    3. การใช้ Ternary operator
  7. ลูป
    1. การใช้ for
    2. การใช้ while
  8. ฟังก์ชั่น
    1. การสร้างฟังก์ชั่นและการเรียกใช้
      1. การสร้างฟังก์ชั่น เพื่อแยกการคำนวณ
      2. การเรียกใช้งานฟังก์ชั่นจากฟังก์ชั่น
      3. Arrow function
    2. ตัวแปรชนิดฟังก์ชั่น (ตัวแปรเก็บค่าของฟังก์ชั่น)
    3. ค่า Default ของพารามิเตอร์ของฟังก์ชั่น
  9. Part II : OOPและGoogle Services

  10. OOPและGoogle Services
    1. แนวคิวOOP (Object Oriented Programming)
    2. Class และ Object
    3. Object
      1. Methods
      2. Proterties (Attributes)
      3. Enumeration
      4. Interfaces
      5. Event
    4. Google Services
      1. เซอร์วิสต่างๆใน Google Workspace (G Suite/Gmail)
  11. Part III : เซอร์วิส SpreadSheet

  12. การใช้งานเซอร์วิส SpreadSheet
    1. รู้จักกับเซอร์วิสSpreadsheeet
    2. การใช้งานคลาส Spreadsheet
    3. การใช้งานคลาส Sheet
    4. การใช้งานคลาส Range
    5. การใช้งานคลาส Named Range
  13. การสร้างเมนูใน Google Sheets
  14. Alert และ Prompt
    1. สร้างกรอบแจ้งเตือนด้วย alert
    2. สร้างกรอบกรอกค่าด้วย prompt
  15. Part IV : โปรเจกต์ Get-Process-Set

  16. โปรเจกต์ Get-Process-Set
    1. จับข้อมูลจาก Google Sheets
    2. ประมวลข้อมูลที่จับมาได้
    3. เซ็ตกลับไปที่ Google Sheets ณ เร้นจ์อื่น
  17. Part V : อาเรย์

  18. มิติของอาเรย์
    1. อาเรย์ 1 มิติ
    2. อาเรย์ 2 มิติ
    3. การหามิติของอาเรย์ด้วย length
  19. การใช้เมถอดของอาเรย์
    1. push
    2. unshift
    3. pop
    4. shift
    5. splice
    6. slice
    7. join
    8. concat
    9. indexOf
  20. การใช้เมถอดตระกูลวนลูปของอาเรย์
    1. forEach
    2. map
    3. sort
      1. การเรียงข้อมูลในอาเรย์ 1 มิติ
      2. การเรียงข้อมูลในอาเรย์ 2 มิติ
    4. filter
    5. every และ some
    6. reduce
  21. การใช้งาน Spread operator
  22. ตัวอย่างเทคนิคการใช้งานอาเรย์
    1. การกรองตัวซ้ำ
    2. การกรองคอลัมน์
    3. อื่นๆ
  23. Part VI : อิเมล์

  24. การใช้เซอร์วิส Mail
    1. ความแตกต่างระหว่างเซอร์วิส Mail และ เซอร์วิส Gmail
    2. การหาจำนวนโควต้าการส่งเมล์
  25. การใช้งานเมถอด sendMail แบบต่างๆ
  26. การแนบไฟล์ไปกับ Email
    1. การแนบไฟล์ PDF
    2. การแนบไฟล์ภาพจาก Google Drive
    3. การแนบไฟล์ภาพจากลิงค์
  27. การแนบภาพแบบ Inline Image
    1. การแทรกภาพลงในเนื้อหาของอิเมล์ (Inline Image)
  28. Part VII : โปรเจกต์ (เลือกทำ1โปรเจกต์)

  29. การส่ง Email Merge โดยใช้เทมเพลต HTML
    1. สร้างเทมเพลตเนื้อหาของอิเมล์ โดยใช้ HTML
    2. ส่งอิเมล์แบบ Mail Merge ไปยังผู้รับหลายคน
  30. ระบบ Stock ใน Google Sheets
    1. สร้างฟอร์มเบิก/คืน
    2. บันทึกข้อมูลการเบิก/คืน Stock
    3. มีระบบตัด Stock
  31. สั่งเสื้อผ่าน Google Form
    1. นำข้อมูลการสั่งซื้อเสื้อมามาคำนวณ เช่น ราคารวม
    2. ส่งอิเมล์แจ้งยอดการสั่งซื้อ และรายละเอียดต่างๆ