便利なエクセルファイルがあったとします。
多くの人が各自のパソコン内の好きな場所に保存します。
そのファイルが単独で完結するものならば、構いませんが、他のファイルとの連携があるなどした場合には、関数式やマクロを、ファイルが保存されているフォルダ名に沿った形で書き換える必要が生じます。
しかし、自分が保存されているフォルダを エクセル関数式 で示せれば、その計算結果を上手に有効活用して、関数式やマクロに使うことで、ユーザー各人が 神経質になることなく 好きな場所(フォルダ)にファイルを保存することが可能になります。
G:\PC技能集(自作の便利な機能集)\エクセル技能集\マクロ\
冒頭の画像にも載せたように、自宅のパソコンでは、外付のハードディスクドライブ(Gドライブ)の中に3階層のフォルダを作って、3階層目のフォルダ内にエクセルファイルを保存しています。
このファイルを会社のパソコンに保存する場合、USBメモリーに保存する場合など、ディスクドライブ名やフォルダ名、フォルダの階層数も、それぞれ異なってきますが、状況を正しく反映してくれる関数です。
自分のパソコンのフォルダや外付けハードディスクだけでなく、会社などで、社内ネットワークを組み、共通フォルダにファイルを保存しているような場合でも、自分が保存されているフォルダ を全く問題なく、示す関数です。
その関数式は次のようになります。
=LEFT(TEXT(CELL("filename",B2),0),SEARCH("\[",TEXT(CELL("filename",B2),0),1)-1)&"\"
少し長い関数式ですが、この通りの式にすれば、自分が保存されているフォルダを正しく表示してくれます。
実は関数式の中の B2 ですが、何でも構いません。
A1でも、C3でも、エクセル内に存在するセル名を、計算式に2回登場する2箇所を同じセル名にすれば、同じ計算結果となります。
注意していただいたいことは 一つだけ です。
保存する前のファイルには、当たり前のことですが、この関数式は有効ではありません。
マクロでシートをコピーして、別名ファイルを作る時などに、自分のフォルダ名を表示させることは有効なのですが、注意を怠り、うっかり保存前のシートを保存しようと、マクロで該当する関数式を読み込もうとしても、未保存のシートだと、マクロがエラーを起こしますので、注意が必要になります。
この関数計算式を使った応用編については、いずれ、別の機会にBLOGにして紹介させていただければと思っております。
シリーズ
「エクセルの便利メモ」 Excelを極めるにはVLOOKUP関数を使ってはいけない
の他の記事(目次)は下記のURLとなります。
http://blog.goo.ne.jp/pizzica0912/e/2d6c432428b6d6f4708f239c9af2ffd5
音楽(クラシック) ブログランキングへ