const XLSX = require('xlsx'); const fs = require('fs'); const workbook = XLSX.readFile('input.xlsx'); const sheet = workbook.Sheets[workbook.SheetNames[0]]; const data = XLSX.utils.sheet_to_json(sheet); // สร้าง map รวมยอด const summary = {}; data.forEach(row => { const project = row['โครงการ']; const dept = row['แผนกวิชา']; const budget = Number(row['งบประมาณ']) || 0; if (!summary[project]) summary[project] = {}; if (!summary[project][dept]) summary[project][dept] = 0; summary[project][dept] += budget; }); // แปลงกลับเป็น array สำหรับ export const result = []; Object.keys(summary).forEach(project => { const row = { โครงการ: project, ...summary[project] }; result.push(row); }); // เขียน Excel const newSheet = XLSX.utils.json_to_sheet(result); const newBook = XLSX.utils.book_new(); XLSX.utils.book_append_sheet(newBook, newSheet, 'Summary'); XLSX.writeFile(newBook, 'output.xlsx'); console.log('✅ สรุปเสร็จแล้ว → output.xlsx');