ESP32 Data to Google Sheet 2024
สร้าง Google sheet ขึ้น คัดลอก Google Sheet ID https://docs.google.com/spreadsheets/d/XXXXX Google Sheet ID XXXXX/edit#gid=0 เก็บไว้ เลือก ส่วนขยาย (Extension) Apps Script จะมีไฟล์ชื่อ รหัส.gs หรือ code.gs คัดลอกไฟล์ต่อไปนี้ลงไป
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 |
<xmp>function doGet(e) { Logger.log( JSON.stringify(e) ); var result = 'Ok'; if (e.parameter == 'undefined') { result = 'No Parameters'; } else { var sheet_id = 'Google Sheet id'; // Spreadsheet ID var sheet = SpreadsheetApp.openById(sheet_id).getActiveSheet(); var newRow = sheet.getLastRow() + 1; var rowData = []; var Curr_Date = new Date(); rowData[0] = Curr_Date; // Date in column A var Curr_Time = Utilities.formatDate(Curr_Date, "Asia/Bangkok", 'HH:mm:ss'); rowData[1] = Curr_Time; // Time in column B for (var param in e.parameter) { Logger.log('In for loop, param=' + param); var value = stripQuotes(e.parameter[param]); Logger.log(param + ':' + e.parameter[param]); switch (param) { case 'press1': rowData[2] = value; result = 'OK'; break; case 'temp1': rowData[3] = value; result += ', OK'; break; case 'deep1': rowData[4] = value; result += ', OK'; break; case 'alti1': rowData[5] = value; result += ', OK'; break; case 'press2': rowData[6] = value; result = 'OK'; break; case 'temp2': rowData[7] = value; result += ', OK'; break; case 'deep2': rowData[8] = value; result += ', OK'; break; case 'alti2': rowData[9] = value; result += ', OK'; break; default: result = "unsupported parameter"; } } Logger.log(JSON.stringify(rowData)); var newRange = sheet.getRange(newRow, 1, 1, rowData.length); newRange.setValues([rowData]); } return ContentService.createTextOutput(result); } function stripQuotes( value ) { return value.replace(/^["']|['"]$/g, ""); }</xmp> |
เอา Google Sheet ID ใส่ในช่อง โดยฟังก์ชั่น doGet(e) จะเพิ่มแถวเข้าไปโดย คอลัมน์แรก โดยส่งข้อมูลผ่าน rowData [] rowData[0] = วันที่ rowData[1] = เวลา rowData[2] = pres1 ความดัน MS5837 ตัวที่ 1 rowData[3] = temp1 อุณหภูมิ1 […]