{"id":2294,"date":"2021-08-11T16:40:20","date_gmt":"2021-08-11T07:40:20","guid":{"rendered":"https:\/\/www.amano-labo.jp\/pages\/?p=2294"},"modified":"2021-08-11T16:40:21","modified_gmt":"2021-08-11T07:40:21","slug":"google-apps-script%e3%81%ab%e3%82%88%e3%82%8b%e3%83%87%e3%83%bc%e3%82%bf%e5%8f%97%e4%bf%a1%ef%bc%88%e3%83%95%e3%82%a1%e3%82%a4%e3%83%ab%e5%88%86%e5%89%b2%ef%bc%89","status":"publish","type":"post","link":"https:\/\/www.amano-labo.jp\/pages\/tips\/2294\/","title":{"rendered":"Google Apps Script\u306b\u3088\u308b\u30c7\u30fc\u30bf\u53d7\u4fe1\uff08\u30d5\u30a1\u30a4\u30eb\u5206\u5272\uff09"},"content":{"rendered":"<div class=\"amano- amano-entity-placement\" id=\"amano-226313742\"><div id=\"amano-4219383504\"><a href=\"https:\/\/www.amazon.co.jp\/dp\/4274222640\/ref=cm_sw_r_cp_ep_dp_RK1JBb6W0ZSQ5\" aria-label=\"iotbook201809\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.amano-labo.jp\/pages\/wp-content\/uploads\/2018\/06\/iotbook201809.png\" alt=\"\"  srcset=\"https:\/\/www.amano-labo.jp\/pages\/wp-content\/uploads\/2018\/06\/iotbook201809.png 1000w, https:\/\/www.amano-labo.jp\/pages\/wp-content\/uploads\/2018\/06\/iotbook201809-300x24.png 300w, https:\/\/www.amano-labo.jp\/pages\/wp-content\/uploads\/2018\/06\/iotbook201809-768x61.png 768w, https:\/\/www.amano-labo.jp\/pages\/wp-content\/uploads\/2018\/06\/iotbook201809-100x8.png 100w, https:\/\/www.amano-labo.jp\/pages\/wp-content\/uploads\/2018\/06\/iotbook201809-150x12.png 150w, https:\/\/www.amano-labo.jp\/pages\/wp-content\/uploads\/2018\/06\/iotbook201809-200x16.png 200w, https:\/\/www.amano-labo.jp\/pages\/wp-content\/uploads\/2018\/06\/iotbook201809-450x36.png 450w, https:\/\/www.amano-labo.jp\/pages\/wp-content\/uploads\/2018\/06\/iotbook201809-600x48.png 600w, https:\/\/www.amano-labo.jp\/pages\/wp-content\/uploads\/2018\/06\/iotbook201809-900x72.png 900w\" sizes=\"(max-width: 1000px) 100vw, 1000px\" width=\"1000\" height=\"80\"   \/><\/a><\/div><\/div>\n<p>Google Spreadsheet\u3092Google Apps Script\u3092\u7528\u3044\u3066\u7c21\u6613\u7684\u306a\u30c7\u30fc\u30bf\u53d7\u4fe1\u30fb\u8a18\u9332\u30b5\u30fc\u30d0\u30fc\u306b\u3059\u308b\u3068\u958b\u767a\u30fb\u30c6\u30b9\u30c8\u306b\u3068\u3066\u3082\u4fbf\u5229\u3067\u3059\u3002\u305f\u3060\u3057Spreadsheet\u306b\u3082\u30c7\u30fc\u30bf\u4e0a\u9650\u304c\u3042\u308b\u306e\u3067\u3001\u6c38\u7d9a\u7684\u306b1\u3064\u306e\u30d5\u30a1\u30a4\u30eb\u306b\u30c7\u30fc\u30bf\u3092\u66f8\u304d\u7d9a\u3051\u3066\u3044\u308b\u3068\u6ea2\u308c\u3066\u3057\u307e\u3044\u3001\u65b0\u898f\u30c7\u30fc\u30bf\u3092\u4fdd\u5b58\u3067\u304d\u306a\u304f\u306a\u308a\u307e\u3059\u3002<\/p>\n\n\n\n<p>\u305d\u3053\u3067\u4fdd\u5b58\u5148\u3092\u5206\u5272\u3059\u308b\u3053\u3068\u3092\u8003\u3048\u3066\u307f\u307e\u3057\u305f\u3002\u3053\u3053\u3067\u306f\u65e5\u4ed8\u3054\u3068\u306b\u9055\u3046Spreadsheet\u306b\u3059\u308b\u3053\u3068\u3068\u3057\u307e\u3057\u305f\u3002<\/p>\n\n\n\n<p>\u4e0b\u306e\u30b3\u30fc\u30c9\u4f8b\u3067\u306f\u6307\u5b9a\u3057\u305f\u30d5\u30a9\u30eb\u30c0\u30fc\u306b\u300cyyyyMMdd\u300d\uff08\u4f8b\uff1a20210123\uff09\u3068\u3044\u3046\u30d5\u30a1\u30a4\u30eb\u540d\u306eSpreadsheet\u306b\u30c7\u30fc\u30bf\u3092\u4fdd\u5b58\uff08\u8ffd\u8a18\uff09\u3057\u3066\u3044\u304d\u307e\u3059\u3002\u3053\u3053\u3067\u30d5\u30a1\u30a4\u30eb\u304c\u306a\u3051\u308c\u3070\u751f\u6210\u3068\u30d8\u30c3\u30c0\u30fc\u3068\u306a\u308b1\u884c\u76ee\u3092\u8a18\u5165\u3057\u3066\u304b\u3089\u8ffd\u8a18\u3057\u307e\u3059\u3002<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>DATA_FOLDER_ID = \"!!!!! input FOLDER ID !!!!!\";\r\n\r\nfunction openDataFile() {\r\n  var dataFolder = DriveApp.getFolderById(DATA_FOLDER_ID);\r\n  var strDate = Utilities.formatDate(new Date(), 'Asia\/Tokyo', 'yyyyMMdd');\r\n\r\n  var fi = dataFolder.getFilesByName(strDate);\r\n  var dataFile;\r\n\r\n  if (fi.hasNext()) {\r\n    Logger.log(\"found\");\r\n    dataFile = fi.next();\r\n  } else {\r\n    Logger.log(\"not found\");\r\n    var sf = SpreadsheetApp.create(strDate);\r\n    var sheet = sf.getSheets()&#91;0];\r\n    sheet.appendRow(&#91;\"date\", !!!!! input header info !!!!! ]);\r\n    dataFile = DriveApp.getFileById(sf.getId());\r\n    dataFile.moveTo(dataFolder);\r\n  }\r\n\r\n  Logger.log(strDate);\r\n\r\n  return dataFile;\r\n}\r\n\r\nfunction doPost(ee) {\r\n  var strDate = new Date();\r\n  var dataFile = openDataFile();\r\n  var sheet = SpreadsheetApp.openById(dataFile.getId()).getSheets()&#91;0];\r\n  try {\r\n    var line = ee.postData.getDataAsString();\r\n    var values = JSON.parse(line);\r\n\r\n    var value1 = values.value1;\r\n    !!!!! change and add your json parse code !!!!!\r\n\r\n    sheet.appendRow(&#91;strDate, value1 !!!!! input your value names !!!!! ]);\r\n  } catch (e) {\r\n    sheet.appendRow(&#91;strDate, \"error\", line, e ]);\r\n  }\r\n}\r\n<\/code><\/pre>\n\n\n\n<p>\u30b3\u30fc\u30c9\u4f8b\u3067\u306f\u6bce\u65e5\u3068\u306a\u3063\u3066\u3044\u307e\u3059\u304c\u3001\u30d5\u30a1\u30a4\u30eb\u540d\uff08openDataFile\u5185\u306estrDate\u5909\u6570\uff09\u306e\u751f\u6210\u5b9a\u7fa9\u3092\u5909\u66f4\u3059\u308c\u3070\u6bce\u6708\u3001\u6bce\u9031\u306a\u3069\u3068\u5c55\u958b\u53ef\u80fd\u3067\u3059\u3002<\/p>\n\n\n\n<p>\u307e\u305fJSON\u30c7\u30fc\u30bf\u3092\u53d7\u4fe1\u3057\u3066\u3044\u307e\u3059\u304c\u3001\u5b9f\u969b\u306b\u306f\u4f55\u3067\u3082\u69cb\u3044\u307e\u305b\u3093\u3002\u5b9f\u969b\u306b\u79c1\u304c\u8a66\u884c\u3057\u305f\u306e\u306fJSON\u306b\u8fd1\u3044\u3051\u308c\u3069\u3082JSON\u3067\u306f\u306a\u3044\u5f62\u5f0f\u306e\u30c7\u30fc\u30bf\u3092JSON\u5f62\u5f0f\u306breplace\u3067\u5909\u63db\u3057\u3066\u304b\u3089\u30d1\u30fc\u30b9\u3057\u3066\u3044\u307e\u3057\u305f\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Google Spreadsheet\u3092Google Apps Script\u3092\u7528\u3044\u3066\u7c21\u6613\u7684\u306a\u30c7\u30fc\u30bf\u53d7\u4fe1\u30fb\u8a18\u9332\u30b5\u30fc\u30d0\u30fc\u306b\u3059\u308b\u3068\u958b\u767a\u30fb\u30c6\u30b9\u30c8\u306b\u3068\u3066\u3082\u4fbf\u5229\u3067\u3059\u3002\u305f\u3060\u3057Spreadsheet\u306b\u3082\u30c7\u30fc\u30bf\u4e0a\u9650\u304c\u3042\u308b\u306e\u3067\u3001\u6c38\u7d9a\u7684\u306b1\u3064\u306e <a class=\"more-link\" href=\"https:\/\/www.amano-labo.jp\/pages\/tips\/2294\/\">\u7d9a\u304d\u3092\u8aad\u3080\u2026<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[6,4],"tags":[31,43],"class_list":["post-2294","post","type-post","status-publish","format-standard","hentry","category-software","category-tips","tag-google-apps-script","tag-iot"],"_links":{"self":[{"href":"https:\/\/www.amano-labo.jp\/pages\/wp-json\/wp\/v2\/posts\/2294","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.amano-labo.jp\/pages\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.amano-labo.jp\/pages\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.amano-labo.jp\/pages\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.amano-labo.jp\/pages\/wp-json\/wp\/v2\/comments?post=2294"}],"version-history":[{"count":1,"href":"https:\/\/www.amano-labo.jp\/pages\/wp-json\/wp\/v2\/posts\/2294\/revisions"}],"predecessor-version":[{"id":2295,"href":"https:\/\/www.amano-labo.jp\/pages\/wp-json\/wp\/v2\/posts\/2294\/revisions\/2295"}],"wp:attachment":[{"href":"https:\/\/www.amano-labo.jp\/pages\/wp-json\/wp\/v2\/media?parent=2294"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.amano-labo.jp\/pages\/wp-json\/wp\/v2\/categories?post=2294"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.amano-labo.jp\/pages\/wp-json\/wp\/v2\/tags?post=2294"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}