前回、足し算「+」ボタンにちょっと触れたので、作ってみちゃったなんて人はいい傾向ですね。
自分でやってみてこそ経験になるのです。
作ってない人は、先を見る前に作ってみましょう。
どうしても出来なかったら見てみればいいんです。
むしろ私のコードよりいいものが出来上がることだってあるはずです。
やってみて、ダメなら他の方法を試してみる。
この精神を忘れずに!
さて、本題に入りましょう。
足し算をしたい。
というか正確には電卓の「+」ボタンと同じ動作をさせたい。
単純な部分をまずは切り出しましょう。
計算画面に表示されている数字に、これから入力される数字を足したい。
あれ?未来の作業が入ってきちゃいましたね。
というか、「+」ボタンを押しても、足し算されるのは後での話でしたね。
必要なのは、
1、今の数字を一時的に記録すること。
2、次に打たれる数字ボタンを今の数字と切り分けること。
3、後で「=」ボタンを押した時に足し算だったことを分かるようにしておくこと。
といったとこでしょうか。
ではもう少し踏み込んで表現すると、
ストック値C2セルに現在の数字を代入。
ロック値B2セルに1を代入。
計算式D2セルに+を代入。
この3つのアクションをコードにしましょう。
function button_plus() {
var i = A2;
sheet.getRange(“B2”).setValue(1);
sheet.getRange(“C2”).setValue(i);
sheet.getRange(“D2”).setValue(“+”);
}
宣言文は前にまとめているので、短くて済んでますね。
さて、お気づきでしょうか?
A2セルが空白だったらという設定が抜けてますね。
function button_plus() {
var i = A2;
if ((A2 != null && A2 != “” && A2 != 0 )){
sheet.getRange(“B2”).setValue(1);
sheet.getRange(“C2”).setValue(i);
sheet.getRange(“D2”).setValue(“+”);
} else {
}
}
ここまでやってみて、いかがでしょうか?
合ってるのかどうか分からないけど、とりあえず言われた通りに進めてきてしまっていないでしょうか?
間違ってたら後で直せばいいんです。
でも、直すためにはどこを直すのか見つける必要があります。
ログを取ってどこで違うのか探すのか。
理論がそもそも間違っているのか。
スペルを間違っているのかも?
大文字小文字が違うのかも。
出来るまで試してみたことで、次に同じ間違いが起きた時の対応が早くなるんです。
実際に、私もこのブログ用にコードを用意して見ながら記事を書いています。
が、書いてる途中で「あれ?これ必要か?」「あれ?これは理論的に間違ってるな・・・。」と、直しています。
直すからには、動くのかのチェックが必要。
その都度、おかしくないかデバッグ作業をしています。
もしも本ブログのコードがおかしいところがあったら、こういった作業の結果なので暖かい目でお見逃しくださいますようお願い申し上げる次第で御座いまして、本当に申し訳ないと思っているのでお許しください・・・。
コメント