Google Apps Scriptã§Formã®Gridãã¹ãã¬ããã·ãŒãããåæ§ç¯ãããGASã
ååã®è€æ°ã¬ã³ãŒããéä¿¡ãããã©ãŒã ã®ãšã³ããªãŒã«ãŠãæ¬äŒŒçã«Google Formã§è€æ°ã¬ã³ãŒããç»é²ããã³ãŒãã玹ä»ããŸããããäœã£ãŠããŠæãåºããã®ãããããããããŠã³ãªã¹ããã°ãªããããŒãã®éžæè¢ãã®éãããããããå Žåã1åã ãäœããªããšããããæçŽããå ¥ãå¯èœæ§ãããïŒäŸãã°æ¯åºåãªã¹ããå¢ãããæžã£ãããçµ±åãããïŒå Žåãäœçœ®ã远å ãåé€ãé ·ãé¢åã ã£ãã®ãæãåºããŸããã
ãããã¹ãã¬ããã·ãŒãäžã®å€ãæã£ãŠåæ§ç¯ããŠã¿ãããšããã®ãä»åã®è¶£æšã§ããä»åã¯ã¡ãããã¿ã§ããããã®å¹çšã¯éåžžã«å€§ããã§ããä»ã®ããŒãé¡ãåæ§ã«åæ§ç¯ãå¯èœãªã®ã§ãå€åã®å€ãé ç®ã¯ãã¹ãã¬ããã·ãŒã飿ºã«ããŠããŸããšãã¡ã³ããã³ã¹ã楜ã«ãªããŸãã
ä»å䜿çšãããã¡ã€ã«é¡
åºæ¬çã«ã¯ååã®ãµã³ãã«ãã¡ã€ã«ã«è¿œå ããŠãã圢ã§ãã
å³ïŒãã®ã°ãªããããŒããåæ§ç¯ããã®ãä»åã®ç®ç
ãœãŒã¹ã³ãŒã
ä»åã¯æ¢åã®ã°ãªããé ç®ïŒè¡ïŒãåæ§ç¯ããã ããªã®ã§ãåã«é¢ããŠã¯è¶³ãããåŒãããããŠããŸãããããããåã®è¿œå çãéåžžã«ç°¡åã§ãã
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 |
//ã¹ãã¬ããã·ãŒãã®ID var sheetid = "ããã«ã¹ãã¬ããã·ãŒãã®IDãå
¥ãã"; function OverwriteGrid() { //ã¹ãã¬ããã·ãŒããååŸ var sheet = SpreadsheetApp.openById(sheetid).getSheetByName("æ¥ä»ãªã¹ã"); //æ¥ä»ãªã¹ããååŸãã var data = sheet.getRange("A2:A").getValues(); var dlength = data.length; //ïŒæ¬¡å
é
åãšããŠäœãçŽã var array = []; for(var i = 0;i<dlength;i++){ if(data[i][0] == ""){ //空çœã®æã¯äœãããªã }else{ array.push(data[i][0]); } } //ã¢ã¯ãã£ããã©ãŒã ãååŸãã var form = FormApp.getActiveForm(); // 質åé
ç®ããã«ããŠã³ã®ãã®ã®ã¿ååŸ var items = form.getItems(FormApp.ItemType.GRID); items.forEach(function(item){ //察象ã®ã°ãªããããŒããèŠã€ãã if(item.getTitle().match(/åºå€å¯åŠ.*$/)){ //質åã»ã¯ã·ã§ã³ãååŸãã var question = item.asGridItem(); //éžæè¢ãäžæžããã question.setRows(array); } }); } |
ãã€ã³ã
- ã¹ãã¬ããã·ãŒãåŽã¯ãåçŽã«1åã«ãªã¹ãã䞊ã¹ãŠããã®ãåã£ãŠããŠããŸãïŒæ¥ä»ãªã¹ãã·ãŒãããååŸããŸãïŒã
- å ¥ãæ¿ããããã«ã¯ããªã¹ãã®ããŒã¿ã1次å é åã«ããå¿ èŠããããããé åãåæ§ç¯ããŠããŸãã
- é åããŒã¿ã¯ç©ºçœã®å Žåã«ã¯ãã¹ã«ãŒããããå Žåã«ã¯pushããŠããŸãã
- ã¢ã¯ãã£ããã©ãŒã ã«æŒããŠãItemTypeã¯GRIDãã®ãã®ãitemsãšããŠååŸããŠããŸãã
- itemsã®äžã§ã»ã¯ã·ã§ã³ã¿ã€ãã«ããåºå€å¯åŠãã«è©²åœãããã®ãååŸããasGridItemã§ãããååŸããŸãã
- setRowsã¡ãœããã§è¡ã®ããŒã¿ãäžæžãåã»ããã§ããŸãã
- setColumsã¡ãœããã§ãåã®ããŒã¿ãäžæžãåã»ãããã§ããŸãããã¡ãã1次å é åã§OKïŒä»åã®ã±ãŒã¹ã§èšãã°["åºå€","äŒæ","åäŒ"]ãšãã£ããããªåœ¢ã§ã»ããããã°OK.