シート名、ワークブック名​​、ファイルパスを返すように変更できるCELL関数と呼ばれるExcelの便利な関数があります。

この記事では、Excelシートの名前を返す方法を学習します。

これがどのように行われるかを見てみましょう。

現在のファイルにこの情報が必要であることを考慮します。まず、CELL関数を理解しましょう。構文は= CELL(info_type、[reference])です。 CELL関数は、参照内の1 ^ st ^セルのフォーマット、場所、または内容に関する情報を返します。 info_typeには、ファイル名、アドレス、色などを指定できます。表示されるドロップダウンに利用可能なオプションのリストがあるため、必要なものを選択できます。参照は、使用している現在のワークブックです。

img1

この例のファイルは「B:\」にあります。ファイルパス、ブック名、シート名を取得するには、

img2

を使用します。これにより、B:\ [Book1.xlsm] Sheet2として出力が得られます。これは、この例では、ファイルパス+ブック名+ブックのシート名です。

では、一歩先に進みましょう。 B:\ [Book1.xlsm] Sheet2からのみファイルパス*を取得するには、

img3

を使用します。 = MID(CELL( “filename”)、1、FIND( “[“、CELL( “filename”))-1)

強調表示されたセクションが最初に評価され、関数内の開始ボックスブラケット「[」の位置が検出されます。場所4として検出されます。

次に、関数は= MID(CELL( “filename”)、1,3)に絞り込みます。 mid関数を使用して、1 ^ st ^文字から3 ^ rd ^文字(4-1 = 3)までの文字が必要です。したがって、取得する出力は、ブック名のないファイルパスになります。結果は「B:\」になります。次に、ブック名を取得します。私たちの機能は

img4

ですこの結果B:\ [Book1.xlsm] Sheet2からブック名を取得する必要があります。それがどのように機能するかを理解しましょう。

MID(CELL( “filename”),, FIND( “[“、CELL( “filename”))+ 1、(FIND( “]”、CELL( “filename”)))-FIND( “[“、CELL (「ファイル名」))-1)

強調表示された部分が最初に評価されます。ブック名は常にボックスブラケットで囲まれているため、開始ボックスブラケット[および終了ボックスブラケット]を検索する必要があり、結果はこれら2以内になります。したがって、関数のこの部分はテキストの開始位置を返します。

MID(CELL( “filename”)、FIND( “[“、CELL( “filename”))+ 1、(FIND( “]”、CELL( “filename”)))-FIND( “[“、CELL( 「ファイル名」))-1)

この強調表示された部分は、開始位置から抽出される文字数であるMID関数の最後のパラメーターに評価されます。したがって、この場合は15である終了ボックスブラケットの位置を計算し、開始ボックスブラケットを除外するために4と別の-1である開始ボックスブラケットの位置を差し引きます。したがって、mid関数は= MID(CELL( “filename”)、5,10)として完了し、例のようにBook1.xlsmとして結果を取得します。

次に、シート名である最後の側面を導き出します。私たちの機能は

img5

ですとてもシンプルな機能です。最初に、この関数で強調表示されているセクションが評価されます-= MID(CELL( “filename”),, FIND( “]”、CELL( “filename”))+ 1,255)

これにより、終了ボックスブラケット+ 1の位置がわかります(ボックスブラケットを除外します。したがって、この例では、15 + 1 = 16になります。ここでMID関数に直接到達します。= MID(CELL)のようになります。 (“ filename”)、16,255)。ファイル名の16 ^ th ^文字から始まる255文字(セルが保持できる最大文字数)を関数に要求しています。

したがって、結果はこの例のようにSheet2を取得します。

結論として、同じ基本関数= CELL( “filename”)をいくつかの拡張機能とともに使用して、ファイル名に関して必要な情報を導出できます。

このようにして、CELL関数を使用してセル内のワークシート名を取得できます。