Apps Script เบื้องต้น — เขียน Script แรกใน 5 นาที
อยากให้ Sheets ทำอะไรอัตโนมัติ เช่น ส่ง email เตือน สร้างรายงาน แต่ไม่เคย code มาก่อน — เริ่มยังไงดี?

วิธีแก้เร็ว — เขียน Script แรกใน 5 นาที
Google Apps Script คือเครื่องมือเขียนสคริปต์ฟรีจาก Google ที่สั่งให้ Sheets ทำงานอัตโนมัติได้ ไม่ต้องเป็นโปรแกรมเมอร์ แค่ก๊อป code ไปวางก็ใช้ได้

ขั้นตอนที่ 1 — เปิด Script Editor

ขั้นตอนที่ 2 — วาง code กด Run

ขั้นตอนที่ 3 — ผลลัพธ์!

4 ขั้นตอนเขียน Script แรก
- 1เปิด Script Editor — ใน Google Sheets ไปที่ Extensions → Apps Script
- 2ลบ code เก่า — ลบ function myFunction() ที่มีอยู่ทิ้ง
- 3วาง code ด้านล่าง — ก๊อปแล้ววางได้เลย
- 4กด Run — คลิกปุ่ม Run (รูปสามเหลี่ยม) ครั้งแรกต้อง Authorize
Script 1: แจ้งเตือน Hello World
// Script แรก — ลองรันดู!
function helloWorld() {
SpreadsheetApp.getUi().alert('สวัสดี Google Sheets!');
}
กด Run → จะมี popup ขึ้นมาว่า "สวัสดี Google Sheets!"
Script 2: อ่านข้อมูลจาก Cell
// อ่านค่าจาก A1 แล้วแสดง
function readCell() {
const sheet = SpreadsheetApp.getActiveSheet();
const value = sheet.getRange('A1').getValue();
SpreadsheetApp.getUi().alert('A1 = ' + value);
}
ลองพิมพ์อะไรใน A1 แล้วรัน — จะเห็นค่าที่พิมพ์ขึ้นมา
ตัวอย่างจริง — Script ที่ใช้บ่อย
กรณี 1: เติมเกรดอัตโนมัติ (ครู/อาจารย์)
มีคะแนนนักเรียน 50 คน อยากเติมเกรด A/B/C/D/F อัตโนมัติ — รันครั้งเดียวจบ
function gradeStudents() {
const sheet = SpreadsheetApp.getActiveSheet();
const data = sheet.getRange('B2:B51').getValues();
const grades = data.map(row => {
const score = row[0];
if (score >= 80) return ['A'];
if (score >= 70) return ['B'];
if (score >= 60) return ['C'];
if (score >= 50) return ['D'];
return ['F'];
});
sheet.getRange('C2:C51').setValues(grades);
}
กรณี 2: ส่ง Email เตือนอัตโนมัติ
มีรายการที่ต้องทำ อยากให้ส่ง email เตือนทุกเช้า — ตั้ง Trigger ได้
function sendReminder() {
const sheet = SpreadsheetApp.getActiveSheet();
const tasks = sheet.getRange('A2:B10').getValues();
let body = 'งานวันนี้:\n';
tasks.forEach(row => {
if (row[1] !== 'done') body += '- ' + row[0] + '\n';
});
MailApp.sendEmail('you@email.com', 'งานวันนี้', body);
}
ตั้ง Trigger: Triggers → Add Trigger → ทุกวัน เวลา 8:00
กรณี 3: สร้างเมนูกดเอง (Custom Menu)
อยากมีเมนูบนแถบเครื่องมือ กดแล้วรัน script ได้เลย ไม่ต้องเปิด Editor
function onOpen() {
SpreadsheetApp.getUi()
.createMenu('เครื่องมือ')
.addItem('เติมเกรด', 'gradeStudents')
.addItem('ส่ง Email', 'sendReminder')
.addToUi();
}
onOpen ทำงานอัตโนมัติทุกครั้งที่เปิดไฟล์ — เมนูจะขึ้นมาเอง
Pro Tips — Apps Script ขั้นสูง
อ่านเพิ่ม: Apps Script Automation ขั้นสูง | สูตรขั้นสูง QUERY, FILTER
ผิดบ่อย + วิธีแก้
กด Run แล้วขึ้น "Authorization required"
สาเหตุ: Script ต้องขอ permission เข้าถึง Sheets/Gmail ครั้งแรก
แก้: คลิก "Review Permissions" → เลือก Google Account → คลิก "Allow" (ปลอดภัย เพราะเป็น script ของเราเอง)
Script ทำงานช้ามาก (หลายนาที)
สาเหตุ: ใช้ getValue()/setValue() ในลูป — อ่าน/เขียนทีละเซลล์
แก้: เปลี่ยนเป็น getValues()/setValues() อ่าน/เขียนทั้ง range ครั้งเดียว
ขึ้น error "Cannot read property of null"
สาเหตุ: ชื่อ Sheet หรือ Range ผิด เช่น เขียน "Sheet1" แต่ชีตจริงชื่อ "ข้อมูล"
แก้: ตรวจชื่อ Sheet ให้ตรง หรือใช้ getActiveSheet() แทน getSheetByName()
📸 ภาพหน้าจอจาก Google Sheets จริง
ภาพถ่ายตรงจาก Google Sheets ที่ใช้งานได้จริงทันที — ไม่ใช่ภาพ mockup



บทความที่เกี่ยวข้อง
สูตร Google Sheets ขั้นสูง — QUERY, FILTER, ARRAYFORMULA [2026]
รวมสูตรขั้นสูงใน Google Sheets — QUERY, FILTER, ARRAYFORMULA, REGEX, IMPORTRANGE สำหรับคนที่ใช้ SUM/IF/VLOOKUP เป็นแล้ว ยกระดับเป็น Pro (อัป…
Google Apps Script คือ? เริ่มจาก 0 ส่ง Email อัตโนมัติได้ใน 10 นาที [2026]
สอน Google Apps Script จากศูนย์ — เปิด Extensions, เขียน Script แรก, ส่ง Email อัตโนมัติ, ตั้ง Trigger สำรองข้อมูล พร้อม Code copy ใช้ได้เลย…
IMPORTDATA Google Sheets — ดึงข้อมูลจากเว็บอัตโนมัติ [2026]
สอน IMPORTDATA, IMPORTHTML, IMPORTXML, IMPORTFEED ใน Google Sheets ดึงข้อมูลจากเว็บอัตโนมัติ — ตาราง ราคาหุ้น อัตราแลกเปลี่ยน RSS Feed (อัปเ…