入っている値を受け取る。ない」ということになる。翻訳したい文字列がセルに入っている場合にのみ、翻訳結果が表示されるようにするため。LanguageAppクラスのtranslateメソッドが実行されて、その結果をreturn文が返してくる。(数式を入れたセルに訳文が表示される。条件が成立しないので、translateメソッドが実行されず、else以下のreturn文が実行されて空欄が返される。(数式を入れたセルには何も表示されない。和文が入ったセルを、1つ目の引数で指定して、上記の2つ目と3つ目の引数を入れ替える。セルA2に和文が入っていて、英訳したい場合の数式は、=translation(A2,"ja","en")になる。第二月曜日は何日かを求める。この記事は自分用の覚書です。ある月の第二月曜日は、何日になるかを求めるやり方です。月曜日を対象にしていますが、何曜日であっても基本的な考え方、やり方は同じです。日数や曜日を扱う計算については、インターネット上でたくさんの方々がいろいろな解説をしてくれています。わかりやすい説明があるかと思います。見つけたら私にも教えてくださいね。以下、当たり前の話ですが大事なところなのであらためてふれておきます。第二月曜日というのは、その月で二度目の月曜日です。「ある日が二度目の月曜日」なのは、一度目の月曜日が過ぎてから初めておとずれた月曜日だからです。一週間は七日あります。足すと第二月曜日の日付を求めることができます。求めることができます。「ある日付が第一月曜日である」とわかるには、その月の「一日は何曜日か」がわからなければなりません。一日が日曜日なら第一月曜日は翌日の2日だとわかります。一日が火曜日なら第一月曜日は7日です。「その月の一日の曜日」を求めることが最初にすることです。「すること」を順番で並べると――1.「その月の一日は何曜日か」を調べる。答えをもとに、「第一月曜日の日付(シリアル値)」を求める。足して「第二月曜日」を求める。このように曜日を捉えると、今回の処理は考えづらいかと思います。曜日が円形につながっているものとして捉えると、今回の処理は考えやすいと私には思えました。週の始めを日曜日からとしたほうが考えやすい人もいるでしょうし、月曜日からにしたほうが考えやすい人もいるでしょう。一週間の曜日を円形に並べて捉えれば、どちらの考え方をする人でも、今回の処理は少しでも考えやすくなると思うのですが、どうでしょうか。して時計回りに数えてください。して時計回りに数えると、第一月曜日は2日です。数えて第一月曜日は7日......というふうに。一つひとつの処理を作業列に分けて行う。上記の3つを一つのセルでやろうとすると、数式がネストされたややこしいものになってしまいます。仕事でつくるファイルは、できるかぎり、誰が見てもわかりやすくつくるべきです。いう意味で、作業列を使って処理の過程を分けるのが望ましいです。作業列で過程を分ければ全体として何をしているかを理解しやすいです。仕事でつくるファイルでは、ネストしなければならない具体的な理由がない場合は、数式のネストは避けるのが望ましいと私は思っています。1.「その月の一日は何曜日か」を調べる。全体としては、次の図のようにしてみました。A列からD列で、「その月の一日は何曜日か」を調べています。関数で一日の日付をつくっています。年と月しか入っていない表だということでしたので、そこからそれぞれの月の一日を求めています。して、何曜日であるかが見た目でもわかりやすいようにしてみました。一日の日付をつくったら、何曜日かを求めます。C列はセルの書式で曜日を表示していますが、書式は計算につかえる値にはなりません。曜日を、計算で使える値にしてやる必要があります。関数でそれができます。