
Googleã¹ãã¬ããã·ãŒã ã§äœ¿ããã¹ãã³ãã¿ã³æ€èšŒ -1
Excelã«ã¯ãããã© Googleã¹ãã¬ããã·ãŒãã«ã¯ç¡ãæ©èœã£ãŠãªãŒãã ïŒ
ã¶ã£ã¡ããããã£ã±ãããããã§ãããïœ
ããŒãã«æ©èœãšã ã·ãŒãã®äœæ¥ã°ã«ãŒããPowerQueryãªã©ãªã©ãæ°ãäžããã°ããªããªãããã Excel ã«ã¯æ©èœãå å®ããŠããŸãã
ããã«é¢ããŠã¯ Googleã¹ãã¬ãã·ãŒã䜿ãã® mirãèªããŠãŸããŠãäžéšã®äœæ¥ã¯ ãŸã ãŸã Excel ã®æ¹ã䟿å©ã§ æãåºããªããŸãŸã§ãããã¶ã£ã¡ãããã¬ãŒã³è³æäœæã¯ Powerpoint ã¡ã€ã³ããå€ãã£ãŠãŸãããïŒãªãã¹ã æèã㊠Googleã¹ã©ã€ãã䜿ãããã«ããŠãŸããïŒ
ã§ããä»ååãäžããã®ã¯ Excelã®äžã§ã¯æ¯èŒçå°å³ç®ãª ã¹ãã³æ©èœïŒã¹ãã³ãã¿ã³ïŒã
ããŸãè€éãªæ©èœã ãš Googleã¹ãã¬ããã·ãŒãã«æäœæ¥ã§å®è£ ããã®ã¯ãããŒãã«ãé«ãã§ããããã®èŸºãã®ãã¡ãã£ãšäŸ¿å©ã ãã©ç¡ããŠãäžäŸ¿ã§ã¯ç¡ãã軜ããªãã¿ãè¯ãããªãšã
ã¹ãã³æ©èœ ã GAS ã 颿°ã§ Googleã¹ãã¬ããã·ãŒãã«å®è£ ããæ¹æ³ãæ€èšŒããæºè¶³ãããã®ãäœããã®ãïŒ ã©ã®ã¢ãããŒãããã¹ããªã®ãïŒãèããŠã¿ãããšæããŸãã
ã¹ãã³æ©èœïŒã¹ãã³ãã¿ã³ïŒãšã¯ïŒ
Webã®å ¥åãã©ãŒã ãšãã§ æ°åãå ¥ããéã«äœ¿ã Ⲡ⌠ãã¿ã³ã§å¢æžã§ããã¢ã¬ã§ããã Excelã§ã¯ æããæ©èœãšããŠååšããŠãããæŽ»çšããŠããäŒç€ŸïŒå人ïŒãå€ãããããªãã§ããããïŒ
Excelã§ã®äœ¿ãã©ãããšããŠã¯ãExcelæ¹çŒçŽ ã§äœæãã ãã©ãŒã ã§æ°åãå ¥ããç®æ ã«äœ¿ã èª€å ¥å鲿¢ã å ¥åã®ç°¡äŸ¿æ§ãåäžã
ãããã¯ãããŒã¿ããŒãã«ïŒé¢æ°ãšçµã¿åãããããšã§ãã«ãã«ããšæ°å€ãåãããŠãçŽããããæèŠã§ èŠèŠçã«ããããããããŒã¿ã衚瀺ãããããããã«ãŒãåDBã£ãœãäœ¿ãæ¹ããããŸãã

äžã®ç»åã§ãããäžã®éšåã¯ãVLOOKUP ã XLOOKUP ïŒãããã¯INDEXïŒã§å¥ã·ãŒãã®ããŒã¿ããŒãã«ãããçªå·ã«åèŽãã æšªäžè¡åã®ããŒã¿ããã£ãŠããŠãã¿ã€ãã«ã«å¿ããå€ãååŸããåŒã§åºæ¥ãŸãã
ä»åã®æ¬é¡ã§ã¯ãªãã®ã§åŒã®èª¬æã¯çããŸããããã®è¡šç€ºéšå㯠Googleã¹ãã¬ããã·ãŒãã§ãåãããã«æ°åŒã§äœããŸãã
åé¡ãšãªãã®ããã¯ãªãã¯ããŠããäžã®äžäžãã¿ã³éšåãšé£åããŠå€åããA2ã»ã«ã®æ°åã®éšåããããã¹ãã³ãã¿ã³ãªãã§ãããæ®å¿µãªãã Googleã¹ãã¬ããã·ãŒãã«ã¯ãããŸããã
å人çã«ã¯ æ°å€ãæå
¥åãããããã«ããŠã³ã§éžæã§ããããšæããã§ãããã©ãŒããŠã䜿ããããšãã è 害ããŠãŒã¶ãŒ ããããããŸãã
Excelã®æ©èœã倧ããŠäœ¿ããŠãªã人ã«éã£ãŠãExcelã§ã¯åºæ¥ããã© Googleã¹ãã¬ããã·ãŒãã§ã¯åºæ¥ãªãããšã®æå¥ãèšããã§ããããã
ãŸãæçŽã¯ãããšããŠä»å㯠Googleã¹ãã¬ããã·ãŒãã§ ã¹ãã³ãã¿ã³ãå®è£ ããçºã®æ€èšŒã 4åã«åããŠèšäºããããšæããŸãã
ä»ã©ããã¹ãããã£ãŠèšã£ãã ã¹ãã«ã ãïŒã£ãŠãããããã§ãããã¹ãã³æ©èœããšãã§ å š4åïŒ ãš ãã¿ã®æ°Žå¢ããçãæ¹ããããããããŸããïœ
ã§ãã4çš®é¡ã®ã¢ãããŒããéããŠÂ GASã®åºç€ ã 颿°ã®å¿çšã«ã€ã㊠çè§£ãæ·±ãŸããšæããŸãã®ã§ãä»ãåããã ããã
Q. ã»ã«ã®æ°åã墿žãããã¹ãã³ãã¿ã³ãå®è£ ããã
ã»A2ã»ã«ã®æ°å ã¹ãã³ãã¿ã³ã§ 墿žãããã
ïŒä»¥äžã¯è¿œå èŠä»¶ïŒ
ã»ã§ããã° Excelã¿ããã« ãµã¯ãµã¯åãããã
ã»ã§ããã° ã¹ããïŒã¢ããªçïŒã§ã䜿ãããšãã
ã»å¢æžã®å€ã¯ ã«ã¹ã¿ã ã§ãããšããã 1ãã€ä»¥å€ã«5ãã€ãšãã
ã»ã»ã«åºå®ã§ã¯ãªããã¢ã¯ãã£ãã»ã«ã§ã¹ãã³æ©èœäœ¿ãããããïŒ
ãšããããã¯æ©èœãšããŠç¡ã ã¹ãã³ãã¿ã³ã ãŸãã¯äœã£ãŠãå¯èœã§ããã°è¿œå èŠä»¶ã«å¯Ÿå¿ããŠããã£ãŠæãã§ããããã
以äžã®4ã€ã®æ¹æ³ã§æ€èšŒããŠã¿ãŸãã
GAS ã å²ãåœãŠã ã¹ãã³ãã¿ã³ãäœã£ãŠã¿ã
ã¢ãã€ã«å¯Ÿå¿ onEdit ã§åãã¹ãã³ãã¿ã³ãèãã
颿°ã§ã¹ãã³ãã¿ã³ã¯åºæ¥ãã®ãïŒ
HtmlService䜿ã£ãŠ ãã€ã¢ãã°ã§ã¹ãã³
æºè¶³ããã¹ãã³æ©èœã¯å®çŸã§ããã§ããããïŒ
A1.GAS ã å²ãåœãŠã ã¹ãã³ãã¿ã³ãäœã£ãŠã¿ã

ãŸããä»åã¯ãããäžã§ããèŠããã GASã䜿ã£ãå®çªã®æ¹æ³ã
GAS ã å²ãåœãŠã ã¹ãã³ãã¿ã³ãäœã£ãŠã¿ã
ã詊ããŠã¿ãŸããããæé ãšããŠã¯ä»¥äžã®éãã
ä»åã¯ç°¡åãªãã¿ãªãã§ãäžå¯§ã«æžããŠãããŸãã
1. ã¹ãã¬ããã·ãŒãã§ ã¹ãã³ãã¿ã³ãšé£åãããã»ã«ãæºå
2. ã¹ã¯ãªãããšãã£ã¿ã§ã³ãŒããæžãä¿å
3. ååã®å®è¡ã®éã® æ¿èªããã
4. ãšãã£ã¿äžãã詊ãã«å®è¡ãåäœç¢ºèª
5. å³åœ¢æåã§ ãã¿ã³ãäœæããã¿ã³ãé 眮
6. ãã¿ã³ã«ã¹ã¯ãªãããå²ãåœãŠ
7. ãã¿ã³ãæŒããŠãã¹ããã
8. 宿
A1-1. ã¹ãã¬ããã·ãŒãã§ ã¹ãã³ãã¿ã³ãšé£åãããã»ã«ãæºå

ãŸãã¯ãã¹ãã³ãã¿ã³ã«é£åããŠæ°åãå€åããã»ã«ã決ããŸããã¹ãã³ãã¿ã³ãåããããšãåªå ãªã®ã§ããŸãã¯é£åãããã»ã«ã¯åºå®ã§è¯ãã§ãã
ãšãããã A2ã»ã«ãšããŠãæ ç·ã§ç®ç«ããããã©ã³ãã36ã倪åã«ããããšã§ç®ç«ãããŠãããŸãããã
é£ã® B2ã»ã«ã¯ UPãšDOWN 2ã€ã®ãã¿ã³ã眮ãäºå®ãªã®ã§ãã»ã«ã®å¡ãã€ã¶ãã§èãã°ã¬ãŒã«ããŠãã瞊é·ã«ããŠãããŸãã
ã¡ãªã¿ã«äžèšã®ããã« äžèŠãªçœ«ç·ãæ¶ã㊠çœãã£ã³ãã¹ãšããŠäœ¿ãããå Žåã¯ã衚瀺ã¡ãã¥ãŒãã ã°ãªããç·ã®ãã§ãã¯ãå€ãã°OKããããã眫ç·ã®è²ãå€ããå¿ èŠã¯ãããŸããã

A2-2. ã¹ã¯ãªãããšãã£ã¿ã§ã³ãŒããæžãä¿å

ããã§ã¯GASãæžããŠãããŸãããã
ãšããããã¯ãå®è¡ããã A2ã»ã«ã®å€ã 1å¢ãããã·ã³ãã«ãª ã¢ãããã¿ã³çšã®ã³ãŒããæžããŸãã
ã¡ãã¥ãŒã® æ¡åŒµæ©èœ ïŒ Apps Script ã§ãšãã£ã¿ãéããŸãã

function ã颿°åã(){
ããããã«ã³ãŒããæžããŠããã
}
ãŸãã¯é¢æ°åã myFunction ããå€ããšããŸãããã
ã©ããã颿°åã«ãããããã®ïŒ
æ¥æ¬èªã§ãããã®ïŒ
spin button ã¿ããã« è€æ°åèªã䜿ã£ãŠãããã®ïŒÂ
ãã®èŸºãã®çåãããæ¹ã¯ãããã€ãé£ã«ITã®ãä»äºããã ããŸãšããŠãããŠãããGASã«ããã ã³ãŒãèšè¿°ã®ãäœæ³ïŒã¬ã€ãã©ã€ã³ïŒãèªã¿ãŸãããããšãŠãåèã«ãªããŸãã
ãšããããã¯ãã»ã«ã®å€ã 1å¢ããGASãªã®ã§ 颿°åã spinUp ãšããŠãããŸãããã
ã€ãã§ã« ãããžã§ã¯ãåã倿ŽããŠãããŸãããã

GAS㯠ãããžã§ã¯ãã®äžã« ãã¡ã€ã«ãããããã¡ã€ã«ã®äžã«è€æ°ã®é¢æ°ïŒfunction)ãèšè¿°ã§ããŸãã
ãããžã§ã¯ããïŒåæå€ãç¡é¡ã®ãããžã§ã¯ããïŒ
ãLããã¡ã€ã«ãïŒåæå€ãã³ãŒã.gs])
ãããLã颿°ãïŒåæå€ ãmyFunction])
æèãããšã䜿ããŸããããããžã§ã¯ãå㯠ããããããååã«ããŠãããŸãããããã㯠functionãšéã£ãŠæ¥æ¬èªã§ãåé¡ãªãã§ãã
ãŸã ãã¡ã€ã«åãã³ãŒã.gsãã¯ãæåã®ãã¡ã¯ ãã®ãŸãŸã§åé¡ãªãã§ãã
ãã¡ã€ã«ãè€æ°äœ¿ãåãããããªã¬ãã«ã«ãªã£ãŠããããååã®ä»ãæ¹ãã«ãŒã«åããŠããã°è¯ãã§ãã
ã³ãŒããæåã«æžãéã®åºæ¬çãªè§£èª¬ããããã€ãé£ã«ITã®ãä»äºããããå å®ããŠããŸããã»ããšåããã
spinUp ã® ã³ãŒãã以äžã®ããã«æžããŸããã
//A2ã»ã«ã®å€ã 1å¢ãã
function spinUp() {
const sheet = SpreadsheetApp.getActiveSheet();
const spinCell = sheet.getRange("A2");
const value = spinCell.getValue();
spinCell.setValue(value + 1);
}解説ã¯åŸã§ããã®ã§ããŸã㯠ä¿åãå®è¡ãã¿ã³ãæŒããŠã¿ãŸãããã
â» GASã¯å¿ ã ä¿åãããå¿ èŠããããŸãã
A1-3. ååã®å®è¡ã®éã® æ¿èªããã

ååã®å®è¡ã§ã¯è²ã ã³ãŒãã®æš©éãã§ãã¯ãããŠããããã§ãå°ãåŸ ã¡æéãé·ãã§ãã
ãã㊠GASãã ã¹ãã¬ããã·ãŒãã ãã®ä»Google Docsãã¡ã€ã«é¡ã®æäœãèªã¿åããããå Žåã¯ãååã«æš©éã®èš±å¯ãããæ¿èªããã»ã¹ãå¿ èŠãšãªããŸãã
ä»åã®å Žå㯠GASãã ã¹ãã¬ããã·ãŒãã®èªã¿æžã ãããã®ã§ãäžèšã®ãããªæš©éèš±å¯ã®æ¿èªããã»ã¹ã ååã«çºçããŸãã
ãã¡ãã ã¹ãã¬ããã·ãŒããã ãšãã£ã¿ãéã ã³ã³ãããã€ã³ã ã¹ã¯ãªããã§ãããšãã£ã¿å ã§å®çµãã ã ãã® ã³ãŒããªã æ¿èªããã»ã¹ã¯å¿ èŠãããŸããã
ããã®æµãã ããã€ãé£ã«ITã®ãä»äºããããåèã«ã
ãªã³ã¯å ã«çްããæžããŠãããŸãããç¡æã¢ã«ãŠã³ãã®å Žå㯠å®å šã§ãªãã¿ãããªè¡šèšãåºãŠãããããŠããŸãã
èªåã§äœã£ãã¹ã¯ãªããå®è¡ããã ããªã®ã«ããªããæããã颿ãééããªããšãããªãæãã§ãã¡ãã£ãšããåå¿è 殺ãã§ããã
ãã®ã¹ã¯ãªããæ¿èªã¯ã誰ãäžäººïŒããšãã°ãªãŒããŒïŒãå®è¡ããã°OK
ã£ãŠãããããªããå®è¡ããå
šãŠã®äººãå¿
ãååã«éã詊緎ã£ãŠã®ãåä»ãªãã§ãã
äœæããGASã䜿ã£ãŠãããå ŽåããŠãŒã¶ãŒã«ååæ¿èªã®æµããåšç¥ããå¿ èŠããããŸãã
A1-4. ãšãã£ã¿äžãã詊ãã«å®è¡ãåäœç¢ºèª

ChromeïŒEdgeãã ãã©ïŒã¯ãã¿ããæŽãã§ãã€ã£ãŠæãã§ ã¿ããç¬ç«ãããããšãåºæ¥ãŸããã ãããããããå®è¡ããŠåãæ¿ããŠã·ãŒã確èªã§ã¯ãªããäžèšã®ããã«ãšãã£ã¿ãš ã·ãŒãã䞊ã¹ãç¶æ ã§ãã¹ããåºæ¥ãŸãã
å®è¡åŸã«A2ã®æ°å€ã 1å¢ããŠãŸãããæåã§ãã
ããã§ å°ãã³ãŒãã解説ããŠãããŸããããåæ©çãªéšåã§ãã
const sheet = SpreadsheetApp.getActiveSheet();
éããŠããç¶æ ã§ã®å®è¡ãåæãšããã察象ã®ã¹ãã¬ããã·ãŒãã® ãšãã£ã¿ã«èšè¿°ãã ã³ã³ãããã€ã³ãåã® ã¹ã¯ãªããã®å Žåãä»éããŠããã·ãŒãã ã¢ã¯ãã£ãã·ãŒãã§ãã
SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
ãšæžããŠãåé¡ãªãã§ããã察象ã®ã¹ãã¬ããã·ãŒãå ã®ä»ã®ã·ãŒãã¯é¢ä¿ãªãå Žåã¯ çŽæ¥ã¢ã¯ãã£ãã·ãŒããååŸããäžèšã®æžãæ¹ãã·ã³ãã«ã§è¯ãã§ãã
ãã¯ãã®èšé² ãåèã«ããã®ããgetActive() ã activate() ã䜿ã£ãèšè¿°ã䜿ã£ãŠã人ãããŸãããããŸããå§ãããŸããã
ã¡ãªã¿ã« ã¢ã¯ãã£ãã·ãŒãã§ãããæéããªã¬ãŒÂ ã 察象ã®ã¹ãã¬ããã·ãŒã以å€ã®å Žæã«èšè¿°ããã ã³ãŒãããæäœããå Žåã¯ãã¢ã¯ãã£ããªã·ãŒããšããæŠå¿µããªãã®ã§ã誀äœåã®ããšã«ãªããŸãããã®ãããªå©çšã®éã¯ãã·ãŒãåã§æå®ããŸãããã
const spinCell = sheet.getRange("A2");
ããã§ A2ã»ã«ãååŸããŠããŸãã
â»ããã§ååŸïŒgetïŒã§ããã®ã¯ããããŸã§ã Rangeãªããžã§ã¯ã ã§ãã£ãŠ ã»ã«å ã®å€ã§ã¯ãããŸããã
ãã¡ãã è¡çªå·ãšåçªå·ã§Â getRange(2,1) ãšã㊠2è¡1åç®ïŒã€ãŸãA2ïŒãæå®ããæžãæ¹ã§ãOK
ç¶æ³ã«å¿ããŠäœ¿ãåãåºæ¥ããšè¯ãã§ãã
ã¡ãªã¿ã«Â getRange("R2C1") ã£ãŠæžãæ¹ãã§ããŸãããããã䜿ãããšã¯ãªãã§ãããïœ
泚æç¹ãšããŠãA1衚èšã®æã¯ æååãªã®ã§ ' ã¯ã©ãŒãïŒããã㯠" ããã«ã¯ã©ãŒãïŒã§æ¬ãå¿ èŠããããŸãã éã« è¡çªå·ãåçªå·ã§ååŸããå Žå㯠æ°å€ãªã®ã§ ã¯ã©ãŒãã§æ¬ã£ãŠã¯ãã¡ã§ãã
getRange ã¯ã¹ãã¬ããã·ãŒãã§ GASã䜿ãéã®åºæ¬äžã®åºæ¬ãªãã§ãããçµæ§ééã£ã説æãããŠãããµã€ããå€ãã§ãã倧ããã¯ééã£ãŠãªãã§ããã现ãããã¹ããããŸããã§ã Googleæ€çŽ¢ã§äžäœè¡šç€ºãšããã»ã»ã»ãæ°ãã€ããŸãããã
ã¡ãªã¿ã« ä»å㯠const ã°ã£ãã䜿ã£ãŠãŸãããä»ã« let, var ããããŸãããããã¯ããããã 倿°ã宣èšããéã«äœ¿ããã®ã§ãã
GAS㯠åœå㯠var ãã䜿ããªãã£ããã§ã å šãŠ var ã§å€æ°å®£èšããŠããã³ãŒããæ²èŒããŠãããµã€ããå€ããã§ãããä»ã©ã㯠const , let ãã¡ã€ã³ã§äœ¿ãã¹ãã§ãã
䜿ãåãã«ã€ããŠã¯ãåä»£å ¥ãå宣èšã®å¯åŠãããšã¯ã¹ã³ãŒãã®éããªãã§ãããããã¯å€ãã®JavaScript ç³»ã®ãµã€ã㧠解説ãããŠããã®ã§ããã£ã¡èŠãæ¹ãæ©ãã§ãããã
spinCell.setValue(value + 1);
spinCell(A2)ã« setValue ã§ value + 1 ãæžã蟌ãã§ããŸãã
ããã«ãã£ãŠÂ A2ã®å€ ã +1 ããããã®ã«çœ®ãæãããŸãã
ãã㯠spinCell.setValue( ++value) ãšæžãããšãã§ããŸããããã®æžãæ¹ã¯ã¡ãã£ãšãããã¥ããã§ãããã
ããããã ãªã value++ ã§ã¯ãªãã ++value ãªã®ãïŒ
ããã¯èª¬æãããšé·ããªãã®ã§ã以äžã®ãµã€ããåèã«ããŠãã ããã
çŽæ¥ 䜿ãå Žåã®å眮ããåŸçœ®ãã®æåã®éãããããããšæããŸãã
let value = spinCell.getValue();
value++;ã//++value ã§ãäžç·
spinCell.setValue(value);ã¡ãªã¿ã«ãããèšè¿°ããã° value++ , ++value ã©ã£ã¡ã§ãè¯ãã§ãã
ã§ã æ®éã« +1 ã£ãŠãããããã§ããã
ä»ã«ã
value +=1ã
ãšãã£ã æžãæ¹ããããŸãã
æ¡ä»¶ãèæ ®ããŠã³ãŒãã粟æ»
ã»å¢æžã®å€ã¯ ã«ã¹ã¿ã ã§ãããšããã
ãšããèŠä»¶ãèæ ®ããã° +1 ããã®ãŸãŸäœ¿ãã®ã§ã¯ãªãã以äžã®ãã 倿° numã宣èšããŠãããŠã value + num ãšæžããŠãããæ¹ãæ±çšæ§ããããŸãã
//A2ã»ã«ã®å€ã 1å¢ãã
function spinUp() {
const num = 1;
const sheet = SpreadsheetApp.getActiveSheet();
const spinCell = sheet.getRange("A2");
const value = spinCell.getValue();
spinCell.setValue(value + num);
} æžãã¿ã³çšã®ã³ãŒãã¯ããã€ãã¹ããã°ããã®ã§ä»¥äžã«ãªããŸãã
//A2ã»ã«ã®å€ã 1æžãã
function spinDown() {
const num = 1;
const sheet = SpreadsheetApp.getActiveSheet();
const spinCell = sheet.getRange("A2");
const value = spinCell.getValue();
spinCell.setValue(value - num);
}ããããããã å¢ãã¿ã³ãæžãã¿ã³ã«å²ãåœãŠãã°è¯ããã§ããã»ã»ã»ããªããéè€ããéšåå€ããŠç¡é§ãå€ãæãã§ãããïŒ
ããã å ±ééšåã spin颿°ãšããŠãŸãšããŠãUp ãš Down ã¯åŒæ°ã§å¶åŸ¡ãã圢ã«ã㊠簡ç¥å & ã¡ã³ããã³ã¹ ããããããŠã¿ãŸãããã
ãã¹ãã³ãã¿ã³çšã³ãŒã 宿çã
//å³åœ¢ããã¿ã³ãšããŠäœ¿ã GASã¹ãã³
//èšå®å€
const sheet = SpreadsheetApp.getActiveSheet();
const num = 1;ã//墿žå€
const spinCellAdd = "A2"; //察象ã®ã»ã«
//â²ãã¿ã³çšãå¢
function spinUp(){
spin(num);
}
//âŒãã¿ã³çšãæž
function spinDown(){
spin(-num);
}
//åºæ¬åäœãšãªã颿°
function spin(x) {
const spinCell = sheet.getRange(spinCellAdd);
spinCell.setValue(spinCell.getValue() + x);
}èšå®å€ïŒå¯Ÿè±¡ã·ãŒãã墿žå€ã察象ã»ã«ïŒã 颿°ã®å€ã«åºããŠãã°ããŒãã«å€æ°ãšããŠããŸãã
ããã«ãã³ãŒãã®å ±ééšåã spin ãšãã颿°ã«ããŠÂ spin(x) ã§ãxãšããåŒæ°ãæãããŠããŸãã
å¢é¢æ°ãspinUp ã®äžã§ã¯ spin(num) ãšããŠãspin ã®åŒæ°ã«ãã®ãŸãŸ num ãæå®ããããšã§ numãå ç®ã
äžæ¹ æžé¢æ° spinDown 㯠spin(-num) ã§ -num ã spinã®åŒæ°ã«æå®ããããšã§ num åã æžç®ãããŠããŸãã
ããã§ã³ãŒãã宿ããŸããã
ãã®æç¹ã§å ã»ã©ãšåãããã« ä¿åãå®è¡ã㊠åãããã¹ãããå¿ èŠããããŸãã 解説ã¯çç¥ããŸãã
A1-5. å³åœ¢æåã§ ãã¿ã³ãäœæããã¿ã³ãé 眮

Googleã¹ãã¬ããã·ãŒãã§ å³åœ¢ã ç·ãå ¥ããå Žåã¯ãæ¿å ¥ ïŒ å³åœ¢æå ããäœæããŸãã
Googleã¹ãã¬ããã·ãŒãã®å³åœ¢æåã¯ã»ã»ã»
å³åœ¢é¢é£ã¯ãæ£çŽ Googleã¹ãã¬ããã·ãŒãã¯ã¯ãœä»æ§ã ãšæããŸãã
Excelã«æ¯ã¹ãŠãããŒãäžæºã

å³åœ¢æåã§äœæãã ãªããžã§ã¯ãã¯ãã¹ãã¬ããã·ãŒãäžã§ã¯ ã³ããŒããåºæ¥ãªãããç·šéã ãµã€ãºå€æŽãš èšçœ®å Žæã®ç§»åããã§ãããè²ãå€ããã æ ç·ã®å€ªããå€ããããšãã£ããã¡ãã£ãšããä¿®æ£ãããã«ã å床å³åœ¢æåã® ãã€ã¢ãã°ã衚瀺ããŠè¡ãå¿ èŠããããŸãã
ã€ãã§ã«èšããšããã€ããŒãªã³ã¯ãä»äžããããšãåºæ¥ãŸããã
ããã«ãã¹ãã¬ããã·ãŒãäžã§ã®ãµã€ãºå€æŽã¯å³åœ¢æåäžã®ãµã€ãºå€æŽãšã¯å¥æ±ããšãã仿§ã

é 匵ã£ãŠ ã·ãŒãäžã§ ããæãã®ãµã€ãºã«èª¿æŽããŠããå°ãè²ãå€ããããšå³åœ¢æåã§ è²ãç·šéã»ä¿åãããš ã·ãŒãåŽã§ã®èª¿æŽããªã»ãããããŸãã
ã€ãŸããåããµã€ãºã®å³åœ¢ãã³ããŒããå Žåããå³åœ¢æååŽã§ é©åãªãµã€ãºã«ããŠããå¿ èŠãããã£ãŠããšã§ãã
ã·ãŒããšã®äœçœ®é¢ä¿ãèŠããªã å³åœ¢æåã®ç»é¢ã§ ãµã€ãºãããæãã«ããã£ãŠã®ããçµæ§ææ¢ããªäœæ¥ãªãã§ãããã»ã»ã»ã
ãšããããã§ ä»åã®ããã« ãã¿ã³ãäžäžã§2ã€äœãå Žåã¯ã
ã»å³åœ¢æåãéããŸã㯠Upãã¿ã³ãšã㊠Ⲡã®å³åœ¢ã ããæãã«äœæã
ã»ä¿åããŠçµäºãããš ã¹ãã¬ããã·ãŒãäžã«è¡šç€ºããã
ã»èšçœ®å Žæã®ã»ã«ã«çœ®ãã
ã»ç·šéã§åã³å³åœ¢æåãéã ãµã€ãºãããæãã«ä¿®æ£
ãïŒã·ãŒãåŽã§ã®ç¢ºèªãšä¿®æ£ãäœåºŠãç¹°ãè¿ãïŒ
ã»ããæãã«å®æããããæ¬¡ã¯ Downãã¿ã³ã
ã»å®æããâ²ã ç·šéã§ å³åœ¢æåãéã å³åœ¢æåç»é¢ã§ ã³ããŒ
ã»ãã®å³åœ¢æå㯠ä¿åããŠçµäºã
ã»ã¡ãã¥ãŒãã æ¿å ¥ ïŒå³åœ¢æå ã§æ°ããå³åœ¢æåãç«ã¡äžã
ã»å ã»ã©ã³ããŒããâ²ã貌ä»ã
ã»å転ãã äžåã㮠⌠ãšããïŒãµã€ãºã¯èª¿æŽãããŠãã®ã§ãã®ãŸãŸïŒ
ã»è²ãå€ã㊠ä¿åããŠçµäº
ã»ã·ãŒãäžã§äœçœ®ã調æŽ
ïŒã·ãŒãäžã§ã¯ 2ã€ã®å³åœ¢ãæããæ©èœã¯ãªãã®ã§ ç®èŠ ã§äœçœ®èª¿æŽ â»ã¬ã€ãç·ã¯åºãïŒ
ã»å®æ

ãã®çšåºŠã® â² ãå転ããã 2ã€ã®ãã¿ã³ãäœãã ãã§ çµæ§ãªå·¥æ°ã§ãïœ
Excelã ã£ãã ç¡æã® ãªã³ã©ã€ã³çã§ã ã·ãŒãäžã§çŽæ¥å³åœ¢ãæ¿å ¥ãç·šéã§ããŸãããã¿ãã¬ãããšã®çžæ§ã®ãããæç»ããè¥å¹²äžå®å®ã§ãã䟿å©ã«äœ¿ããŸãã
å®éã®ã·ãŒãã®äžã«å¥ã¬ã€ã€ãŒãéããŠããããªæããªãã§ããããïŒ

ãã®ç¹ã¯ExcelããããªãŒã矚ãŸãããGoogleWorkspace ã®å³åœ¢æåé¢é£ã¯ææ¬çãªèŠçŽãããã£ãŠãè¯ããšæããŸãã
A1-6. ãã¿ã³ã«ã¹ã¯ãªãããå²ãåœãŠ

ãšãã£ã¿ã§äœæããã¹ã¯ãªããã¯ãGoogleã¹ãã¬ããäžã® å³åœ¢ãæ¿å ¥ããç»åã«å²ãåœãŠãããšãå¯èœã§ãGASå®è¡ãã¿ã³ãšããŠå©çšã§ããŸãã
ã¹ã¯ãªãããå²ãåœãŠãéã¯ã颿°åãå
¥ããã ãã§ãã
ä»åã§ããã° â²ã®å³åœ¢ã« spinUpãâŒã« spinDown ã§ããã
å²åœã®éã¯ã颿°ã®åŸãã®() ã¯ã€ããŸããã
æ®å¿µãªãããåå³åœ¢ããå®è¡ã®éã« åŒæ°ãããããããšãã§ããªãã®ã§ã1ã€ã®é¢æ°ã§ãã¿ã³æ¯ã«éãåäœããããããšã¯ã§ããŸããã
HTMLã¿ããã« å³åœ¢ã« id ãšã value èŠçŽ ãä»äžã§ãããš é¢çœãããªãã§ãããã©ãã
ã ããGASã®å Žåã¯ããã¿ã³æ¯ã«é¢æ°(function)ãçšæããŠãããå¿ èŠããããŸãã
ãããé¢åã§ãã
ãã ãä»åã®ããã«ã»ãŒåãåãïŒ up ã down ã§ A2ã»ã«ã®æ°å€ã ãã©ã¹ããã€ãã¹ãã£ãŠã ãã®éãïŒã®å Žåã¯ãåããããªã³ãŒãã2åæžãã®ã§ã¯ãªããåºæ¬åœ¢ã®é¢æ°ãäœã£ãŠãããã«åŒæ°ãæž¡ããŠå®è¡ãã颿°ãçšæããŠããããšã¹ããŒãã§ãã
A1-7. ãã¿ã³ãæŒããŠãã¹ããã
å®éã«åãããŠã¿ãŸãããã

ããŒãããšããããåããã© ãã£ããããŠãŸããã
ãã®GASç¹æã®ãã£ããæã¯ãçµæ§ã¹ãã¬ã¹ãæãããã§ãã
ãããŠãäžå€®äžéšã«è¡šç€ºããããã¹ã¯ãªãããå®è¡ããŠããŸããããããªããŠã¶ãïŒã²ã©ããš3ã€ããã衚瀺ãããŠãŸãã
å®ã¯ããã§ããããªãã¯ãªãã¯éåºŠã«æ°ã䜿ã£ãŠãŸãïœ
ãªããªãExcelãšåãæèŠã§é£æãã¡ãããšã»ã»ã»

å³åœ¢ãããã«ã¯ãªãã¯ãããšæ€ç¥ãããå³åœ¢ã®ç·šéç»é¢ïŒå³åœ¢æåïŒãéããŠããŸããŸãããããã¯ãŠãŒã¶ãŒã«äœ¿ãããã®åŸ®åŠã ãªãšã
ãäœè«ãGoogleã¹ãã¬ããã·ãŒãã®å³åœ¢æåã®ã€ã©ã€ã©ãè§£æ¶ããæ¹æ³
ä»åã®æµãã§ã¯ å³åœ¢äœæã»èª¿æŽã®ç ©éããã·ãŒãäžã§ã³ããŒã§ããªãåé¡ãããã« ã¯ãªãã¯é£æã§ ç·šéç»é¢ãéããšãã å³åœ¢æåã®ã¯ãœä»æ§ã«ãäœææããå©çšæãŸã§ ã€ã©ã€ã©ããããã£ã±ãªãã§ããã
äžå¿ããããããºãã£ãšè§£æ¶ã»ãºãããšè§£æ±ºããæ¹æ³ããããŸãã
ïŒå¹³æãããºã¯ ããããã€ããšèšãã° ãŸããªã§ãããããæåäžä»£ã¯Â æªåãºãããã§ããïŒ

ãã®æ¹æ³ã¯ãExcelãPowerpointãšãã£ã MSãªãã£ã¹ããŒã«ã§ äœæããå³åœ¢ãã³ãããã¡ããæ¹æ³ã
ãã®ãããŒãæ¬æ«è»¢åãšãããããããã Excelæã£ãŠãªããã Googleã¹ãã¬ããã·ãŒã䜿ã£ãŠãã£ãŠäººãå€ãã§ãããããäž¡æ¹äœ¿ãã人ã¯çµæ§ã³ã¬ã楜ã ã£ããããŸãã
ãã¡ãããè²ãæ ç·ã®å€æŽã¯ ExcelåŽã§ãã£ãŠããå¿ èŠããããŸãããããã ãš Googleã¹ãã¬ããã·ãŒãåŽã§ã¯ ïŒèæ¯éæã®ïŒç»åæ±ããªã®ã§ãæ®éã«ã³ãããå¯èœã ããããã«ã¯ãªãã¯ã§ å³åœ¢æåãéãããšããããŸãããïŒã¹ã¯ãªãã㯠ç»åã«ãå²ãåœãŠå¯èœã§ãïŒ
泚æç¹ãšããŠã¯ããããŸã§ã ããœã³ã³ã§ ã€ã³ã¹ããŒã«ã¢ããªã® ãªãã£ã¹ãœããããã®ã¿ã³ããå¯èœãšããç¹ãæ®å¿µãªãã Webçã® ãªãã£ã¹ããã¯ã³ããåºæ¥ãŸããã
ãã¡ãã ãããäžã® ããªãŒçŽ æãGASãã¿ã³ã«äœ¿ãæ¹æ³ããããŸããã
ãããŠãããäžã€ã®æ¹æ³ããã¡ãã¯å³åœ¢ã®ã³ããŒãç°¡åã«åºæ¥ãªãåé¡ã®è§£æ±ºçã
Androidã¢ããªçã§ å³åœ¢ãã³ãããã ãšãã ã¹ãã·ããã¯ã§ãã
ïŒããããã¯ã£ãŠèšèã¯ãããŸå¥œããããªãã§ããïœïŒ

ãªãã Androidã¢ããªçã ãšãã·ãŒãäžã§å³åœ¢ãã³ããŒãã§ããŸããã³ããŒããå³åœ¢ã¯åæã«ç»åã«å€æããããããªããPCåŽãã å³åœ¢æåã§éããŠç·šéãã§ããŸãããå²ãåœãŠãã¹ã¯ãªãããåŒãç¶ãã§ããŸãã
ããã¯æ®å¿µãªãã Androidã¢ããªéå®ã§ãiPhoneïŒiOSïŒçã®ã¹ãã¬ããã·ãŒãã¢ããªã ãšäœ¿ããŸãããã¿ããããŠã éžæè¢ããåé€ããããªããšããè¬ä»æ§ã
ãããã å®å šãªã解決ãšã¯ãããŸããããå³åœ¢æåã§ã€ã©ã€ã©ãæºãŸã£ãŠã人ã¯ã詊ããã
ããŠããšããããã¯ãµã¯ãµã¯ãšã¯ãããŸããã§ããããã¹ãã³ãã¿ã³ãšããŠäžå¿ã¯åããŸããã
æåŸã«ããã®ä»ã®èŠä»¶ãžã®å¯Ÿå¿å¯åŠã確èªããŠãããŸãããã
ãã®ä» èŠä»¶ãæºããããã®ç¢ºèª
ã»ã§ããã° ã¹ããïŒã¢ããªçïŒã§ã䜿ãããšãããNG
æ®å¿µãªãããããã¯åºæ¥ãŸããã2023幎1æçŸåšãã¹ããã¢ããªçã§ã¯ å³åœ¢ïŒç»åïŒããã¹ã¯ãªããã¯å®è¡ã§ããŸããã
äžå¿ãã¹ããã®ãã©ãŠã¶ã§ PCçã衚瀺ãã㊠å³åœ¢ãã¿ããããããšã§ãGASãå®è¡ãããããšã¯å¯èœã§ããïŒäœ¿ãã«ããã§ããïŒ
ã»å¢æžã®å€ã¯ ã«ã¹ã¿ã ã§ãããšãããOK
ãã㯠num ã å€ããã°ããã ãã§ããã

ã·ãŒãäžã®ã»ã« ããèªã¿èŸŒãã æ°å€ã num ãšããŠäœ¿ãæ¹æ³ããããŸãããããã«é ããªããããªãã§ ãšãã£ã¿äžã§ã®èšå®å€æŽãšããŠãããŸãã
ã»ã»ã«åºå®ã§ã¯ãªããã¢ã¯ãã£ãã»ã«ã§ã¹ãã³æ©èœäœ¿ãããããïŒ
ãã㯠ã³ãŒããšæ§æãå°ãå€ããã°å¯èœã§ãã
//ã¢ã¯ãã£ãã»ã«ãã¹ãã³
//èšå®å€
const sheet = SpreadsheetApp.getActiveSheet();
const num = 1;ã//墿žå€
//const spinCellAdd = "A2"; //察象ã®ã»ã«ãïŒäœ¿ããªãïŒ
//â²ãã¿ã³çšãå¢
function spinUp(){
spin(num);
}
//âŒãã¿ã³çšãæž
function spinDown(){
spin(-num);
}
//åºæ¬åäœãšãªã颿°
function spin(x) {
const spinCell = sheet.getActiveRange(); //ãâ ããã倿Ž
spinCell.setValue(spinCell.getValue() + x);
}const spinCell = sheet.getActiveRange();
ããå€ããããšã§ãéžæããŠããã»ã«ãã¹ãã³ã§å¢æžãããããšãåºæ¥ãŸããéèŠãããã®ãã¯ããããŸãããã»ã»ã»ã

åºæ¥ãããšãåºæ¥ãªãã£ãããšããã®ä»ã®æ³šæç¹ããŸãšããŠãããŸãã
A1.GASãå²ãããŠã ã¹ãã³ãã¿ã³ã§ãå®çŸã§ããããš ïŒ æ³šæç¹
ã»A2ã»ã«ã®æ°å ã¹ãã³ãã¿ã³ã§ 墿žãããããâãOK
ïŒä»¥äžã¯è¿œå èŠä»¶ïŒ
ã»ã§ããã° Excelã¿ããã« ãµã¯ãµã¯åãããããâãÃ
ã»ã§ããã° ã¹ããïŒã¢ããªçïŒã§ã䜿ãããšãããâãÃ
ã»å¢æžã®å€ã¯ ã«ã¹ã¿ã ã§ãããšãããããããã â OK
ã»ã»ã«åºå®ã§ã¯ãªããã¢ã¯ãã£ãã»ã«ã§ã¹ãã³æ©èœäœ¿ãããããïŒ â OK
ïŒãã®ä»ã®æ³šæç¹ïŒ
ã»ãŠãŒã¶ãŒæ¯ã«ååã¯ã¹ã¯ãªããã®æ¿èªãå¿ èŠ
ã»é£æãããš å³åœ¢æåã®ç·šéç»é¢ãéããŠããŸã
çµæ§ ã§ããªãããšããã€ãã¹ç¹ãå€ãã§ããã
ãšã«ããããµã¯ãµã¯åããªãäžã«ãå®è¡ããŠãŸãã®è¡šç€ºã次ããæ¬¡ãžãšåºãŠããã®ã埮åŠã
ããã«ã¯ ãŠãŒã¶ãŒæ¯ã« ååæ¿èªãå¿ èŠã ãã飿ãããš å³åœ¢æåããããŒã³ãšç«ã¡äžããããã
ã¶ã£ã¡ãã å®çšçã§ã¯ãããŸããïŒ
â ãµã¯ãµã¯åããªãã®ãéæã«ãšã£ãŠããããªæãã§ 9ã€ã®æ°å€ãå šãŠã¹ãã³ãã¿ã³ã§æã㊠ã¿ã€ã ãç«¶ãã²ãŒã ã¯é¢çœãããïœ

ä»å㯠ãã¿ã³ã« GASãå²ãåœãŠãæ¹æ³ã§ãGoogleã¹ãã¬ããã·ãŒãã«ã¹ãã³æ©èœãå®è£
ããŠã¿ãŸããããããŸãšãã®éãå®åã«äœ¿ãã«ã¯åŸ®åŠã§ãã
ããè¯ãæ¹æ³ãæ±ããŠã次å㯠onEdit ãçµã¿åãããã¹ãã³ãæ€èšŒããŠã¿ãŸãããã