→PDF Books一覧

『Excel好きに捧げる 面白・便利な 追加関数50』

Excel関連で、少々個人的な趣味に走りすぎてしまい、出版社への提案が通らなかった企画や、あまり通りそうにない(つまり最初からあきらめモードの)企画を、「趣味のExcelシリーズ」と題してPDF書籍化し、今後、不定期で発刊(ダウンロード販売)していきたいと思っています。
その第一弾が、この『Excel好きに捧げる 面白・便利な 追加関数50』です(かなりベタな、かつ自分でハードルを上げてしまうタイトルであることは承知していますが……^^;)。

要するに、VBAで作成できるユーザー定義関数(この本では「追加関数」と呼んでいます)を紹介する本ですが、その作り方、つまりVBAのコードの書き方などは一切解説していません。
一応ユーザー定義関数の完成品も書庫ファイルに同梱していますが、ソフトウェア製品ではなくあくまでも「本」であり、その目的は、関数自体よりもむしろその“アイデア”を紹介することです。付属するファイルは、紙の本でいえばCD-ROMに収録された解説用のサンプルデータといった位置付けです。
商品本体である書籍PDFでは、Excel関数の解説書によくあるパターンで、各追加関数の仕様とその活用方法を解説しています。

さて、この本は次のような利用の仕方が可能です。

3番目の用途にはExcel VBAの基礎知識(これについては本の中でも解説しています)、4番目の用途には少々高度なVBAの知識が必要となります。さらに、VBAに詳しい人、VBAのスキルをもっと鍛えたい人は、

などといった利用法もあると思います(^^;)。
個人的には、特に3番目の利用法を試してみていただけると、意外と楽しいのではないかと考えています。

同書の仕様は以下の通りです。

ご希望の方は、下記のリンク先(DL-MARKET)からお手続きのうえ、ダウンロードしてください。

以下は、同書に収録した50の追加関数の概要です。
なお、01〜17までの関数については、こちらからアドインをダウンロードしてご利用いただけます。

No関数名説明
01FRACT_EXP分数の計算方法を使って分数同士の四則演算を行います。
02SLN_REV2007年の税制改正に対応した定額法の減価償却費を計算します。
03DB_REV2007年の税制改正に対応した定率法の減価償却費を計算します。
04DATE_INTV2つの日付の間隔を求めます(1899年以前にも対応)。
05DATE_PLUS日付に指定した値を加えた日付を求めます(1899年以前にも対応)。
06SORT_ARRAY配列の要素を昇順または降順に並べ替えます。
07RND_ARRAY配列の要素をランダムに並べ替えます。
08KANA_CONVERT仮名の種類を変換します。
09STR_COMBINE文字列をすべて結合します。セル範囲の指定、表示形式での結合も可。
10STR_EVALUATE文字列として指定された式の計算(評価)結果を求めます。
11STR_FORMULAセルの数式を文字列として返します。
12STR_COMPARE文字列がパターンにマッチするかどうかをTRUE/FALSEで返します。
13STR_MODE文字列の中で最も多く出現する文字列を返します。
14STR_SPLIT文字列を区切り文字で区切って、位置に当たるデータを返します。
15SUG_PHONETIC漢字から推定される読み仮名を返します。
16URL_ENCODE文字列をURLエンコード(デコード)します。
17TO_NUM文字列中に含まれる数値を取り出して強制的に数値に変換します。
18AUTO_NUM同じ列または行で自動的に連続番号を表示します。
19MORE_INFO作業中のシートやセルに関する情報を返します。
20FORMAT_INFOセルの書式情報を返します。
21COLOR_CELLS指定した塗りつぶしの色のセルの値の配列を返します。
22SPEAK_WORDS英文を発声します。
23AUTO_AREA基準セルから連続してデータが入力されているセル範囲を返します。
24ALT_AREA対象範囲を上下左右に指定した数だけ増減します。
25ELIM_AREA範囲1から範囲2を取り除いたセル範囲を返します。
26SET_AREA開始条件と終了条件で指定されるセル範囲を返します。
27RADAR_MATCH検査範囲内での検査値の位置(縦×横)を返します。
28EX_MATCH検査範囲内で検査値にマッチするすべての位置を返します。
29EX_VLOOKUP範囲内で検索値にマッチするすべてのセルの列番号の値を返します。
30IF_VISIBLE条件の真偽に応じて指定した図形の表示/非表示を切り換えます。
31IF_PICTURE条件の真偽に応じて指定した図形に画像を表示します。
32SDATABAR_V図形を利用して縦方向の簡易グラフを作成します。
33SDATABAR_H図形を利用して横方向の簡易グラフを作成します。
34SDATABAR_O図形の縦横の大きさを変更する簡易グラフを作成します。
35SHAPE_TEXT図形に表示されている文字列を返します。
36CHART_SOURCEグラフの元データの範囲を指定します。
37FILE_TEXT指定したテキストファイルから特定の行の文字列を取り出します。
38FILE_EXISTパス名のファイルが存在するかどうかをTRUE/FALSEで返します。
39WPAGE_TITLEWebページのタイトルを取得します。
40XML_GETXMLファイルの特定のタグの要素を取り出します。
41XML_LOOKUPXMLファイルの特定のタグの要素が検索値である抽出タグの要素を返します。
42XML_COUNTXMLファイルの特定のタグの数を返します。
43OL_ADDRESSOutlookの連絡帳にある姓と名からメールアドレスを取り出します。
44OL_NAMEOutlookの連絡帳にあるメールアドレスから氏名を取り出します。
45OL_MCOUNT指定した日付の受信メールの数を返します。
46OL_MINFO指定した日付の指定した番号の受信メールの情報を取り出します。
47OL_APPOINT指定した日時以降の最初の予定を取り出します。
48DB_FLDNAMES指定したテーブルのフィールド名を求めます。
49DB_COUNTデータベースの指定した条件を満たすレコード数を求めます。
50DB_GETデータベースから指定したデータを取り出します。