今日は、VBAの「関数」について解説します。いう、それです!xという引数に対し、f(x)という計算を行い、yに代入する。f(x)というような、計算結果を返値としてyに代入する計算式f(x)を、「関数」と言っています。VBAでも同じく関数が使用できます。「エクセル関数日本語化」では、f(x)や、cos(x)、sin(x)など英語表記の関数だけではなく、以下のような日本語表記の関数も使用できます。F_商(10,3)上式は、10を3で割った時の商を計算し、返値として商を返し、yに代入しています。「エクセル関数日本語化」では、F_で始まる日本語関数が100個ほど用意されていますので、なかなか便利に使えます。どのような関数があるか知りたい場合は、「F_」まで入力して、CTRL+スペースキーを押下することで、コード補完を行い、F_で始まる日本語関数の一覧表示を見ることができます。今回は、日本語関数のいくつかを紹介致します。日本語関数がどのくらいの利便性があるかをこのページでご確認ください。それでは、いってみましょう!F_コサイン度F_コサイン度まずは、「F_コサイン度」関数です。「F_コサイン」関数もありますが、こちらは、都合上、弧度法(ラジアン)での計算式になっています。皆さんがなじみのある度数法でのコサインの計算には、「F_コサイン度」を使用します。これは、「F_サイン度」「F_タンジェント度」でも同様です。「F_コサイン度」の計算結果を表示するために、「g_道具.表示」サブルーチンを使用しますので、入力してきます。手順はいつもと同じで、「g_」まで入力してからCTRL+スペースキーを押下してコード補完し「g_道具」にします。その後、「.(ピリオド)」を入力し、コード補完候補の中から「表示」を選択し、TABキーを押下してコード補完を完了します。「g_道具.表示」サブルーチン次に、「f_」と入力し、再びCTRL+スペースキーを押下し、コード補完を行います。この際、「f_」で始まる関数は100個ほどありますので、コード補完リストが大量なリストになります。この際、「f_コ」まで入力して、CTRL+スペースキーを押下すると、「コ」の分までリストが絞り込まれて表示されます。このような応用もできますので、ぜひ活用されてください。「F_コサイン度」のコードが完成しました。上図のようにいかない場合は、以下のコードをコピペしてください。Subそれでは、実際に実行してみましょう。「テストコード」サブルーチンを実行するには、まず、カーソルを、「テストコード」サブルーチン内に置きます。上図のようになります。1/2という結果になりました。次に、「F_商」関数を取り扱ってみましょう。「F_商」関数はある数を割った商を求める関数です。引数には、割る対象になる数を指定します。第二引数には、割る単位の数を指定します。ここでは割る対象の数を10、割る単位の数を3にします。コードは以下のようになります。「F_商(10,3)」のコード入力が手間であれば、以下のコードからコピペしてください。上図のようになります。10を3で割った際の商は3ですね。次に、現在の日時から2ヶ月後の日付を求めてみましょう。このように、一からプログラムを組むと大変そうなプログラムも、あらかじめ関数として使えるようになっています。「F_日付化」関数まず、「F_日付化」関数を置きます。いうのも、VBAは日付を日付としては扱わず、整数部を日数、小数部を秒数とした、「日付シリアル」という形式で取り扱っているからです。そのため、VBAで扱っている日付をそのまま表示すると、単なる数値が表示されてしまいます。それを避けるために、「F_日付化」関数を用いて、通常の日付に戻しています。次に、「F_数ヶ月後」関数を置きます。「F_数ヶ月後」関数の第一引数は、基準となる日付を指定します。第二引数は何ヶ月後の日付を計算するのか、その月数を指定します。「F_数ヶ月後」関数の第一引数には、「F_今」関数を指定しています。「F_今」関数は、現在の日時を返す関数です。「F_数ヶ月後」関数の第二引数には、「2」と2ヶ月後を指定しています。これで、コードは完成です。上図のように行かない場合は、以下のコードをコピペしてください。Subそれでは、実行してみましょう。無事2ヶ月後の日付が計算され、実行結果となっています。まとめお疲れ様でした。ここまで読んで頂いて、ありがとうございました。今日の学びを以下にまとめます。エクセルVBAでは数学と同様な「関数」を取り扱える。「エクセルVBA日本語化」には、「F_」から始まる100個ほどの日本語関数がある。日本語の関数は、「F_」まで入力してCTRL+スペースキーを押下してコード補完すると、関数のリストを表示できる。関数を使うと、複雑なプログラムを一から作らなくても、簡単に作れるようになる。関数の集合はいわゆる「ライブラリ」ともいわれる便利ツールの名称です。「ライブラリ」は、VBAで開発していくなかで、開発効率を高める大事な存在です。皆さんも、ぜひ、活用されてください。最新の記事KaBA@フリーランス修行中こんにちは!IT業界で勤めて17年くらい務めています。プログラミング大好きやろーです。自分も独学でC言語を覚えIT会社に就職しました。その後紆余曲折を経て、VB6.0、VBA、Perl、C#、HTML、CSS、JavaScript、PHPなどを覚えていきました。全部C言語の独学時の経験がベースとなって、学習曲線が良いカーブを描いていました。頑張って覚えられてください!よろしくお願いします。さんの三国志などが好きです。