子供が英単語の勉強のためGoogle Sheetsを使って自分の単語リストを作っています。単語が少なくなってきたら、ひとつずつ調べて入力していくのも良いのですが、あまりにも単語数が多いのでこれだと時間が勿体無い。
Google Sheetsなら簡単に外部サービスと連携して翻訳なんてできるんじゃないかな?と思い、ちょっとやってみました。
こんな感じ。
内容は単純に、指定したセルに入力された値をインプットにして FROM と TO に指定された言語に翻訳をするというもの。
流石に専門用語(科学用語)は苦手なようで、一般用語にしか向いていないかもしれないけれど、それでも翻訳サイトやツールで都度検索するよりも楽なので、子供よりも意外に自分が重宝していたりします。
設定方法
さて、設定方法です。
- Google Sheetsを開く
- ツール > スクリプト エディタを選択
- gsTranslationプロジェクトからgsTranslation.gsをコピーして自分のプロジェクトとして保存。プログラム名はgsTranslation.gsでなく、code.jsでも任意のものでOK。
- Google Sheetsに戻り、翻訳結果を表示させたいセルに以下のように入力。
- 英日
A2セルにある英単語を日本語翻訳表示=DICTIONARY(A2,”EN”,”JA”)
- 日英
A3セルにある日本語単語を英語翻訳表示=DICTIONARY(A3,”JA”,”EN”)
- 英日
- Sourceとなるセルに単語を入力。
- 翻訳候補番号と翻訳結果をセルに表示。
このスクリプトは「デ辞蔵WEBサービス REST版API」からの結果を表示。なお、翻訳結果が複数ある場合には複数行に渡って表示されるようにしています。
尚、スクリプトの参考にしたのはCustom Functions in Google Sheetsの最後にあるgetBlogPosts()関数。
サービス
使ったサービスは以下。Google Translate でもよかったのですが、クオリティに難がある時があるので、デ辞蔵Webサービス REST版API。
- Google Sheets
- カスタムファンクション (in Google Sheets)
- デ辞蔵Webサービス REST版API