コピー2019.04.05みなさん、こんにちは!タカハシ(@ntakahashi0505)です。新しい元号が「令和」に決まりましたね!以前、こんな記事を書いておりました。Scriptを使ってスプレッドシートの自作関数を作る方法です。今回は西暦から和暦を求める関数の作成方法。文字列の演算なども含めてお伝えします。Scriptのスクリプトです。Scriptで西暦を和暦に変換するスクリプト「令和」対応版を紹介したいと思います。前回のおさらいでは、前回のおさらいから。スプレッドシートにバインドするスクリプトでreturnを持つ関数は、スプレッドシートのカスタム関数として機能するというとても素敵な事実があります。それを利用して和暦変換のカスタム関数を作ったんですね。スクリプトはこちらでした。result;}引数として渡された西暦年をnとして、以下のテーブルにマッチした年号と和暦年を結合した文字列を返すというものです。if~else文による簡単な分岐処理ですね。初心者がトライするのに良い題材です。ちなみに、ドキュメンテーションコメントを入れることで、スプレッドシート上で概要を表示したり、補完対象にしたりすることもできるので、ぜひ積極的に入れておきましょう。Script入門、名言Botを作るシリーズをお送りしています。あとで見返すとき、再利用するときなどに備えて、ドキュメンテーションコメントの書き方について解説をします。tonari-it.com2018.05.25和暦変換を「令和」に対応するこの和暦変換のカスタム関数WAREKIを「令和」に対応させていきます。前述のスクリプトについて、平成の前に「令和」かどうかの判定をする分岐処理を入れれば良さそうですね。先ほどのテーブルについて令和を加えたバージョンに更新すると、以下のようになりますね。2018)年になります。スプレッドシート関数WAREKIのスクリプトはこんな感じでよろしいかと。result;}実際に、スプレッドシートで確認してみましょう。A列が西暦年、B列に「=WAREKI(A2)」などの計算式が13行目まで入っております。return文ですぐに戻り値を返すそういえば、変数resultを使っていましたが、わざわざ変数を使わずとも、true判定になった瞬間に、すぐに該当の戻り値を返してもよかったですね。そのあたり修正しました。"計算不能";}}ちょっとスッキリしました。if~else文だと、ちょっと見づらい...そんなときに、使いたくなるswitch文がありましたね。switch文が多岐分岐をするときに使用する構文で、式と等しい値を値1,値2,...と順番に評価して、等しかったcase節以降の処理を実行するというものです。値2://式が値2と等しかったときの処理break;...default://式がすべての値と合致しなかったときの処理}break文が入っているのは理由があって、これを入れないと、ある値がマッチしてそのcase節を実行したら、それ以降に記述されているcase節すべてが実行されちゃうのです(鬼)。どの値もマッチしなかったときは、default節の処理が実行されます。switch文を使った和暦変換のスクリプトそれで、switch文を使って和暦変換のスプレッドシート関数WAREKI2を作りました。"計算不能";}}switch文で条件式を判定したい場合は、「式」にtrueを直接放り込むというテクニックを使います。case節の条件式の評価値がtrueになれば、そのcase節の処理が実行されるということになります。これは結構便利なテクニックです。「しかしおいおい...、あれほど注意しろと言ってたのに、break文を忘れてるじゃねーか」と思いましたでしょ?今回はbreak文なくても大丈夫です。いうのも、return文を実行すると、その関数の処理も終了するからです。今回の場合でいうとWAREKI2自体の処理が終了します。以降の処理は実行されずに済みます。実行結果を見てみましょう。C列に「=WAREKI2(A1)」などとしています。Scriptで西暦を和暦に変換するスクリプト「令和」対応版をお送りしました。if~else文によるパターンとともに、switch文によるパターンも紹介しました。同じ動作をする関数を作る場合でも、場合によって「良い書き方」が変わってきますので、常にそのあたりは考えながら進めていきたいところですね。Script初心者向け、自作のスプレッドシート関数を作っていきます。一からとっても丁寧な解説を心がけておりますので、どうぞチャレンジしてみて下さい。プランノーツ代表、コミュニティ「ノンプロ研」主宰。ITで日本の『働く』の価値を上げる!」をテーマに、VBA&GASの開発、講師、執筆などをしております。→詳しいプロフィールはコチラ★ご依頼・ご相談はお気軽にどうぞ!→お問い合わせはコチラ★フォロー頂ければ嬉しいです。「コミュニティ+講座」形式で継続性&教え合える環境も提供。!ノンプログラマーがプログラミングスキルを身に着ける支援ををするコミュニティ。セミナー・もくもく会・Facebookグループのサポートで「自らで学び続ける力をつける」支援、「教え合うことで学びの価値を上げる」場の提供をしています。Scriptのシリーズとして、Botを作りながらGASプログラミングの基礎の基礎についてお伝えしています。今回は、条件分岐をするif文の使い方、条件式の超基本についてです。Scriptでクラスを作る!」シリーズをお伝えしています。今回は、GASで即時関数にクラスを定義する理由とその方法についてお伝えします。スコープとthisが重要な役割を果たします。ScriptでBotを作りながらその基本を学んでいくシリーズです。今回はスプレッドシートのセル範囲をクリアする方法としてclearメソッド、clearContentメソッドを紹介します。ScriptでTrelloのAPIを叩きます。Docsを確認して今回必要なキーがidMembersとdueとわかったので、この二つを取り出して配列に代入する関数を説明します。Scriptでサイドバーを作る方法のはじめの一歩の概要編スプレッドシートやドキュメントのサイドバーはGASで自作することができます。今回は、GASでサイドバーを作成する前にまず読んで起きたい、その概要としてサイドバーとは何?その作り方は?についてお伝えします。ScriptによるWebアプリケーションの作り方を解説していきます。最初の一歩して静的なWebページを表示するWebアプリケーションを作成していきます。「コミュニティ+講座」形式で継続性&教え合える環境も提供。詳細・お申込はこちら隣ITを応援する当ブログを「応援したい!」「役に立ったよ!」というお気持ちを、コチラからお支払いただくことができます。日々更新の活力倍増いたします。※PayPalアカウントが必要です。※金額は変更可能です。Platform23HTML・CSS32iPhone・アプリ29Monaca・スマホアプリ開発7PC全般・Windows86PowerPoint・VBA28Python87RPA1VBScript15Vue.js・JavaScript13WEBサービス・クラウド68WordPress・ブログ88Word・VBA42コミュニティ・イベント109セミナーのお知らせ11チャットワーク72データ分析・アクセス解析40仕事・生産性・働き方73動画配信8商業出版21起業・フリーランス72電子書籍・Kindle3運営会社プランノーツは"IT×働き方改革"をお手伝いする会社です。「コミュニティ+講座」形式で継続性&教え合える環境も提供。詳細・お申込はこちら隣ITを応援する当ブログを「応援したい!」「役に立ったよ!」というお気持ちを、コチラからお支払いただくことができます。日々更新の活力倍増いたします。※PayPalアカウントが必要です。※金額は変更可能です。Platform23HTML・CSS32iPhone・アプリ29Monaca・スマホアプリ開発7PC全般・Windows86PowerPoint・VBA28Python87RPA1VBScript15Vue.js・JavaScript13WEBサービス・クラウド68WordPress・ブログ88Word・VBA42コミュニティ・イベント109セミナーのお知らせ11チャットワーク72データ分析・アクセス解析40仕事・生産性・働き方73動画配信8商業出版21起業・フリーランス72電子書籍・Kindle3運営会社プランノーツは"IT×働き方改革"をお手伝いする会社です。Scriptが「V8ランタイム」をサポート!モダンなECMAScript構文が使えるようになった2020.02.072020.02.08GASでコピーしたGoogleスライドのプレゼンテーションを取得する方法2020.02.052020.02.05Facebookページいつも隣にitのお仕事タイトルとURLをコピーしました。