สคริปต์ Office เป็นฟีเจอร์ใน Excel สำหรับเว็บ (Excel Online) ที่ช่วยให้ผู้ใช้สามารถทำงานและเวิร์กโฟลว์ที่ซ้ำกันโดยอัตโนมัติโดยใช้สคริปต์ที่ใช้ JavaScript ต่างจากมาโคร Excel แบบดั้งเดิม (ซึ่งใช้ได้เฉพาะในแอปเดสก์ท็อปเท่านั้น) สคริปต์ Office ทำงานบนระบบคลาวด์และสามารถทำงานได้อย่างราบรื่นในเบราว์เซอร์ เหมาะอย่างยิ่งสำหรับการประมวลผลข้อมูล การจัดรูปแบบ การรายงาน และการผสานรวมกับเครื่องมือ Microsoft 365 อื่นๆ เช่น Power Automate โดยอัตโนมัติ
ในบทช่วยสอนนี้ เราจะแสดงวิธีทำให้เวิร์กโฟลว์ใน Excel ออนไลน์เป็นแบบอัตโนมัติโดยใช้สคริปต์ Office
สคริปต์ Office คืออะไร
สคริปต์ Office คือสคริปต์ JavaScript/TypeScript ที่ทำให้งานและเวิร์กโฟลว์ใน Excel Online เป็นแบบอัตโนมัติ พวกเขาสามารถจัดการการจัดรูปแบบ การคำนวณ การจัดการข้อมูล ฯลฯ
- การทำงานซ้ำๆ โดยอัตโนมัติ :ประหยัดเวลาและลดข้อผิดพลาดของมนุษย์
- ทำงานในระบบคลาวด์ :ไม่จำเป็นต้องมี Excel บนเดสก์ท็อป มันทำงานได้ทุกที่ที่มี Excel Online
- ผสานรวมกับ Power Automate :ทริกเกอร์สคริปต์โดยเป็นส่วนหนึ่งของเวิร์กโฟลว์หลายขั้นตอนใน Microsoft 365
- ปรับปรุงการทำงานร่วมกัน :ทุกคนที่มีสิทธิ์เข้าถึงสามารถเรียกใช้หรือแก้ไขสคริปต์ได้
เริ่มต้นใช้งาน
ข้อกำหนดเบื้องต้น: ป>
- การสมัครใช้งาน Microsoft 365 Business หรือ Education
- การเข้าถึง Excel สำหรับเว็บ
- ผู้ดูแลระบบของคุณต้องเปิดใช้งานฟีเจอร์ Office Scripts
จะหาสคริปต์ Office ได้ที่ไหน: ป>
- เปิด Excel Online และสมุดงานของคุณ
- ไปที่ อัตโนมัติ แท็บ (ริบบิ้นด้านบน)
- คุณจะเห็นตัวเลือกในการบันทึกการดำเนินการ และ สคริปต์ใหม่ .
การสร้างสคริปต์ Office แรกของคุณ
มาทำให้ขั้นตอนการทำงานง่ายๆ เป็นแบบอัตโนมัติ:การล้างข้อมูลเก่า การนำเข้าข้อมูลใหม่ และการจัดรูปแบบตาราง
ขั้นตอนที่ 1:บันทึกสคริปต์ของคุณ
บันทึกการดำเนินการ: ป>
- ไปที่ อัตโนมัติ แท็บ>> คลิก บันทึกการดำเนินการ .
- ดำเนินการตามที่คุณต้องการใน Excel (เช่น การจัดรูปแบบเซลล์ การแทรกสูตร)
- เมื่อเสร็จแล้ว คลิก หยุด . ขณะนี้การกระทำของสคริปต์ของคุณได้รับการบันทึกแล้ว
- สคริปต์ได้รับการบันทึกแล้ว และคุณสามารถดู/แก้ไขโค้ดได้
ขั้นตอนในการทำให้เป็นอัตโนมัติ: ป>
- ไปที่ อัตโนมัติ แท็บ>> คลิก บันทึกการดำเนินการ .

- เลือกส่วนหัวและทำให้เป็น ตัวหนา .
- เลือก วันที่สั่งซื้อ คอลัมน์และจัดรูปแบบเป็น วันที่แบบสั้น .
- เลือก ราคาต่อหน่วย คอลัมน์และจัดรูปแบบเป็น สกุลเงิน .
- ในคอลัมน์ถัดไป (E) ให้เพิ่มส่วนหัว ยอดขาย .
- ในเซลล์ E2 ให้แทรกสูตร:
- ป้อนสูตรนี้อัตโนมัติสำหรับแถวที่เหลือ
- คลิก หยุด .

- ดูสคริปต์ใน ตัวแก้ไขโค้ด .

แก้ไขสคริปต์: ป>
คุณสามารถดูและแก้ไขสคริปต์ที่บันทึกไว้ใน JavaScript:

สคริปต์ Office: ป>
function main(workbook: ExcelScript.Workbook) {
let selectedSheet = workbook.getActiveWorksheet();
// Set font bold to true for range A1:D1 on selectedSheet
selectedSheet.getRange("A1:D1").getFormat().getFont().setBold(true);
// Set format for range A2:A11 on selectedSheet
selectedSheet.getRange("A2:A11").setNumberFormatLocal("m/d/yyyy");
// Auto fit the columns of range A:A on selectedSheet
selectedSheet.getRange("A:A").getFormat().autofitColumns();
// Set format for range D2:D11 on selectedSheet
selectedSheet.getRange("D2:D11").setNumberFormatLocal("$#,##0.00");
// An error occurred while recording this event.
// Set range E2 on selectedSheet
selectedSheet.getRange("E2").setFormulaLocal("=C2*D2");
// Auto fill range
selectedSheet.getRange("E2").autoFill("E2:E11", ExcelScript.AutoFillType.fillDefault);
}
ขั้นตอนที่ 2:รีเฟรชและจัดรูปแบบข้อมูลอัตโนมัติ
ลองพิจารณาว่าคุณต้องการทำให้การรีเฟรชและการจัดรูปแบบข้อมูลเป็นแบบอัตโนมัติ
- ล้างข้อมูลที่มีอยู่
- คัดลอกข้อมูลใหม่จากแผ่นงานอื่น (“ข้อมูลดิบ”)
- วางข้อมูลลงในแผ่น "รายงาน"
- จัดรูปแบบช่วงเป็นตาราง
เขียนสคริปต์ด้วยตนเอง: ป>
- ไปที่ อัตโนมัติ แท็บ>> คลิก สคริปต์ใหม่ .
- ตัวแก้ไขโค้ดจะเปิดขึ้นพร้อมกับโครงสร้างพื้นฐานของฟังก์ชัน:

สคริปต์ Office: ป>
function main(workbook: ExcelScript.Workbook) {
// Select the 'Report' worksheet
let reportSheet = workbook.getWorksheet("Report");
// Clear everything in A1:E15
let clearRange = reportSheet.getRange("A1:E15");
clearRange.clear(ExcelScript.ClearApplyTo.all);
// Get the new data from 'RawData'!A1:E15
let rawSheet = workbook.getWorksheet("RawData");
let sourceRange = rawSheet.getRange("A1:E15");
// Copy values, formulas, and number formats
let values = sourceRange.getValues();
let formulas = sourceRange.getFormulas();
let numberFormats = sourceRange.getNumberFormats();
// Paste new data into 'Report'
let targetRange = reportSheet.getRange("A1:E15");
targetRange.setValues(values);
targetRange.setFormulas(formulas);
targetRange.setNumberFormats(numberFormats);
// Format as table
let lastRow = values.filter(row => row[0] !== "").length + 1; // header + non-empty rows
let tableRange = `A1:E${lastRow}`;
let table = reportSheet.addTable(tableRange, true);
table.setName("SalesReport");
// Optional: Auto-fit columns
reportSheet.getUsedRange().getFormat().autofitColumns();
}
- ล้างข้อมูลรายงานเก่า
- นำเข้าข้อมูลใหม่จากแผ่นงานข้อมูลดิบ ประเภทข้อมูล และสูตร
- จัดรูปแบบข้อมูลที่นำเข้าเป็นตาราง
- ปรับคอลัมน์ให้พอดีอัตโนมัติเพื่อให้อ่านง่ายขึ้น
ขั้นตอนที่ 3:บันทึกและเรียกใช้สคริปต์
- คลิก บันทึกสคริปต์ ตั้งชื่อ (เช่น "รีเฟรชรายงานการขาย")
- คลิก เรียกใช้ เพื่อดำเนินการ กระบวนการนี้เกิดขึ้นทันที และรายงานของคุณจะถูกรีเฟรช!

การดำเนินการสคริปต์อัตโนมัติด้วย Power Automate
คุณสามารถทริกเกอร์สคริปต์ Office ได้โดยอัตโนมัติโดยใช้ Power Automate:
- ไปที่ Power อัตโนมัติ และสร้างโฟลว์ใหม่
- ใช้ทริกเกอร์ (เช่น “เมื่อไฟล์ถูกสร้างขึ้นใน OneDrive”)
- เพิ่ม เรียกใช้สคริปต์ ดำเนินการและเลือกสมุดงาน Excel และสคริปต์ของคุณ
- ทำให้กระบวนการหลายขั้นตอนเป็นอัตโนมัติ:รับข้อมูล ประมวลผล ส่งอีเมล แจ้งทีม ฯลฯ
กรณีการใช้งาน: กำหนดเวลาให้สคริปต์ทำงานทุกเช้าวันจันทร์และส่งอีเมลรายงานที่อัปเดต
เคล็ดลับและแนวทางปฏิบัติที่ดีที่สุด
- ใช้ความคิดเห็นในสคริปต์ของคุณเพื่อความชัดเจน
- ทดสอบสำเนาก่อนที่จะรันกับข้อมูลจริง
- ตั้งชื่อตารางและช่วงให้ชัดเจน
- รวมกับ Power Automate สำหรับเวิร์กโฟลว์ข้ามแอป
- ใช้ประโยชน์จากการจัดการข้อผิดพลาดเพื่อทำให้สคริปต์มีประสิทธิภาพ
ตัวอย่างในโลกแห่งความเป็นจริง
- รีเฟรชรายงานยอดขายรายสัปดาห์: ดึงข้อมูลการขายดิบ ทำความสะอาด สรุป และจัดรูปแบบตาราง
- การตรวจสอบข้อมูลอัตโนมัติ: ตรวจสอบค่าที่หายไปหรือค่าซ้ำและแจ้งเตือนผู้ใช้
- การจัดรูปแบบเพื่อความสอดคล้อง: ใช้สไตล์ของบริษัท ส่วนหัว และโลโก้ได้ในคลิกเดียว
- การประมวลผลข้อมูลเป็นชุด: รวมข้อมูลจากหลายแผ่นงานหรือสมุดงาน
บทสรุป
Office Scripts ลดความซับซ้อนของงาน Excel ที่ซ้ำกันอย่างมาก ทำให้สามารถจัดการและรายงานข้อมูลได้อย่างรวดเร็วและสม่ำเสมอ ด้วยการผสานรวมเข้ากับโซลูชันระบบอัตโนมัติที่กว้างขึ้น เช่น Power Automate คุณสามารถสร้างเวิร์กโฟลว์ที่ราบรื่นสำหรับการดำเนินธุรกิจของคุณได้ เริ่มต้นง่ายๆ สำรวจการดำเนินการบันทึก และค่อยๆ สร้างระบบอัตโนมัติขั้นสูงและการผสานรวมกับ Power Automate
รับแบบฝึกหัด Excel ขั้นสูงพร้อมโซลูชันฟรี!