エクセルの勉強部屋のホ−ムへ関数の説明へ操作実習へ楽らくエクセルへ操作説明へ質問と回答へ自習へVBAマクロへエクセルで使えるソフト質問はこちらへ
拡張FIND」ユーザー定義関数の説明
「拡張FIND」ユーザー定義関数
【機能】
文字列を検索し、検索数番目に現れる文字位置を返します。
FIND関数では、最初に見つかった文字位置を返しますが、この「拡張FIND」関数は、検索数を2や3などと指定できますから、文字列中に検索文字が複数ある場合に、その位置を返すことができます。

検索数が、対象の文字の検索値の総数より多い場合は、一番最後に検索された文字位置を返します。

通常の組み込み関数と同じようにワークシート上で使用できる関数です。


A1セルのデータ
三重県四日市市諏訪町1番5号
の場合
B1セルに
=findx("市",A1,2)
と入力すれば、2つめの"市"の文字位置 7 が返ります。

書式 =FINDX(検索文字,対象,検索数)

引数:
検索文字
    引数「対象」の中で検索する文字列を指定します。
対象
    引数「検索文字列」を含む文字列を指定します。
検索数
   「対象」の中の「検索文字列」の何番目に検索された位置とするか数値で指定します。
【使用方法】
セルに直接関数 =FINDX(
と入力するか

関数を入力するセルで関数貼付ボタン「fx」を押します。

「関数の挿入」ダイアログボックスが表示されますので、関数の分類で「ユーザー定義」を選択します。

関数名「FINDX」を選択します。

数式パレットが表示されますので、セル範囲を選択します。

通常の組み込み関数と同じように、引数の入力ができ、数式の結果も表示されます。
この関数のヘルプはありません。

セルに計算結果が表示されます。

活用例として、住所を市までの部分をセルに区分したい場合
  A B C
1 三重県四日市市諏訪町1番5号 三重県四日市市 諏訪町1番5号
2 千葉県市川市八幡1丁目1番1号 千葉県市川市 八幡1丁目1番1号

セルB1には、
=LEFT(A1,findx("市",A1,4))
セルC1には、
=RIGHT(A1,LEN(A1)-findx("市",A1,2))
と入力します。


【ソフトのダウンロード】はこちら
findx.exe
47.7kB
2009/01/30

解凍されるファイル
拡張FIND.xla
22.0kB
2007/2/20

findxadd.xls
23.5kB
2007/2/29

「拡張FIND」の説明.txt
9.07kB
2008/02/08

アドインソフトです。exe形式のファイルは自動インストールされます。

注意:このソフトを使用する場合は、「アドインソフト使用上の注意」を必ずお読みください。
ここに掲載されているエクセルのブックは「マクロ」が記述されています。
このファイルをインストールする前に、「マク ロを有効にする」をチェツクしてください。

このソフトは「マイクロソフト エクセル97/2000/xp/2003/2007」で動作確認しています。
このソフトはフリーソフトです。
本ソフトの使用によって発生した問題について、作者は一切の責任を負わないものとします。