Google Apps Scriptを使ってスプレッドシートにFizzBuzzの結果を表示する

Javascriptの勉強がてらにGASでFizzBuzzを行い、結果をスプレッドシートに反映してみました。

“Fizz”の表示はsetBackgroundで(‘yellow’)に、”Buzz”の表示はsetBackgroundで(‘pink’)に変えて、少しだけ数値とテキストの差を分かりやすく処理。

for文を使って繰返し処理を行いながら、if文で条件分岐して各条件を表示しました。

スプレッドシートにFizzBuzzを反映するGoogle Apps Script

function FizzBuzz(){

//シートを定義
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sht = ss.getActiveSheet();

//繰返しで100行まで連番入力
  for(var i=1;i<=100;i++){
  sht.getRange(i,1).setValue(i);
  
  //3で割り切れたらFizz表示
  if(i%3 === 0){
  sht.getRange(i,1).setValue("Fizz");
  sht.getRange(i,1).setBackground('yellow');
  
  //5で割り切れたらBuzz表示
   }else if(i%5 === 0){
 sht.getRange(i,1).setValue("Buzz");
 sht.getRange(i,1).setBackground('pink');
 
  //どちらでも割り切れるならFizzBuzzを表示
  }else if(i%3 === 0 && i%5 === 0){
 sht.getRange(i,1).setValue("FizzBuzz");
  }
 }
}

 

FizzBuzzを反映したスプレッドシートsample

Google Apps Scriptを使ってスプレッドシートにFizzBuzzの結果を表示する

 

まとめ

基本的な書き方で長くなりがち。もっと短く書けるはずなので要勉強。

>>GASでスプレッドシートの行と列に連番をふる

>>スプレッドシートのセル背景色を変える

>>スプレッドシートの文字色を変える

>>スプレッドシートのセルの値をカット&ペーストする