ทำระบบลงเวลาทำงาน/เช็คอินพนักงานด้วย Google Sheets และ GPS
อัปเดต 5 ตุลาคม 2026
ระบบลงเวลาด้วย Google Sheets เหมาะกับร้านค้า คลินิก โรงเรียนกวดวิชา หรือบริษัทขนาดเล็ก ไม่ต้องซื้อเครื่องสแกนนิ้ว พนักงานใช้มือถือของตัวเองเช็คอินได้ทันที และตรวจพิกัดเพื่อกันการลงเวลาจากที่อื่น
ระบบพร้อมใช้ที่เกี่ยวข้อง
ฟีเจอร์ที่ควรมี
- เช็คอิน/เช็คเอาท์ผ่านมือถือ บันทึกเวลาจากฝั่งเซิร์ฟเวอร์ (กันแก้เวลาในเครื่อง)
- ตรวจพิกัด GPS ว่าอยู่ในรัศมีที่กำหนด
- ถ่ายรูปยืนยันตัวตน (เลือกได้)
- สรุปชั่วโมงทำงาน มาสาย ขาด ลา รายเดือน
- แจ้งเตือนหัวหน้าผ่าน LINE
ตรวจระยะห่างจากที่ทำงาน (Haversine)
function distanceMeters(lat1, lon1, lat2, lon2) {
const R = 6371000, toRad = d => d * Math.PI / 180;
const dLat = toRad(lat2 - lat1), dLon = toRad(lon2 - lon1);
const a = Math.sin(dLat / 2) ** 2 +
Math.cos(toRad(lat1)) * Math.cos(toRad(lat2)) * Math.sin(dLon / 2) ** 2;
return 2 * R * Math.asin(Math.sqrt(a));
}
function checkIn(data) {
const OFFICE = { lat: 13.7563, lng: 100.5018, radius: 150 };
const d = distanceMeters(data.lat, data.lng, OFFICE.lat, OFFICE.lng);
if (d > OFFICE.radius) throw new Error('อยู่นอกพื้นที่ (' + Math.round(d) + ' ม.)');
SpreadsheetApp.getActive().getSheetByName('log')
.appendRow([new Date(), data.employeeId, 'IN', data.lat, data.lng, Math.round(d)]);
return 'ลงเวลาเข้างานสำเร็จ';
}
ฝั่งหน้าเว็บขอพิกัดด้วย navigator.geolocation.getCurrentPosition() แล้วส่งไปที่ checkIn ผ่าน google.script.run
ทางเลือกที่เร็วกว่า
ถ้าไม่อยากเขียนเอง มีระบบสำเร็จรูปที่รวมการลงเวลา รายงาน และแจ้งเตือนไว้แล้ว ติดตั้งตามคู่มือได้ภายในไม่กี่นาที
คำถามที่พบบ่อย: ระบบลงเวลาทำงานด้วย Google Sheets
มีแอปปลอมพิกัดอยู่จริง จึงควรใช้ร่วมกับการถ่ายรูปยืนยัน หรือสแกน QR ที่ติดไว้หน้างานเพื่อเพิ่มความน่าเชื่อถือ
ได้ เก็บพิกัดและรัศมีของแต่ละสาขาไว้ในชีต แล้วตรวจกับสาขาที่พนักงานสังกัด
ไม่มี ระบบทำงานบน Google Sheets และ Apps Script ในบัญชีของคุณเอง
ระบบอื่นที่น่าสนใจ
ระบบฟิตเนส/ยิม/สตูดิโอ: สมาชิกรายเดือน เช็คอิน QR แจ้งต่ออายุ (Jabphap Gym Membership)
ระบบบริหารยิม ฟิตเนส และสตูดิโอบน Google Sheets สมาชิกรายเดือน/รายปี/บัตรนับครั้ง/PT บัตรสมาชิก QR บนมือถือ เช็คอินหน้าเคาน์เตอร์ พักและต่ออายุพร้อมใบเสร็จ จองคลาสตามที่นั่ง และแจ้งเตือนสมาชิกใกล้หมดอายุอัตโนมัติ