[[20141107100131]] 『ファイル名をセルに表記』(TOTAL) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『ファイル名をセルに表記』(TOTAL)

いつもお世話になっております。

ファイル名をセルに表記させたいのですが

ファイル名の後ろの「.xlsm」まで一緒に表記されてしまいます。
後ろの「.xlsm」を非表示にするにはどのような関数が必要でしょうか?

何卒よろしくお願い致します。

< 使用 Excel:Excel2013、使用 OS:Windows7 >


先程の質問に追記です。

ファイルがたくさんあるので
ファイルの全体の文字数は不規則です。
(TOTAL) 2014/11/07(金) 10:17


 SUBSTITUTEでいらない部分を空白に置換されては如何でしょうか?
(コナミ) 2014/11/07(金) 10:18

下のリンクが参考になります
http://kenkitagawa.cocolog-nifty.com/blog/2014/04/excel-eaf9.html
=REPLACE(LEFT(CELL("filename",$A$1),FIND(".",CELL("filename",$A$1))-1),1,FIND("[",CELL("filename",$A$1)),)
(デイト) 2014/11/07(金) 10:19

 UDFなら

Function bsnm()

 bsnm = CreateObject("Scripting.FileSystemObject").GetBaseName(ActiveWorkbook.FullName)
End Function

 ただ、どのブックでも使えるようにしないといけないのでアドイン化するなどしたらいいでしょう。
(カリーニン) 2014/11/07(金) 10:28

REPLACE(LEFT(CELL("filename",$A$1),FIND(".",CELL("filename",$A$1))-1),1,FIND("[",CELL("filename",$A$1)),)

でやってみたのですが、どうしても拡張子が出てきてしまいます。

例えば。。

20141107 ファイル名1.xlsm
20141108 ファイル名1234.xlsm
20141109 ファイル名(その2).xlsm

のようなファイル名があったとして
セルに表記させたいのは

ファイル名1
ファイル名1234
ファイル名(その2)

上記のような感じです。

前と後ろの文字を非表示にさせるのは難しいでしょうか??

(TOTAL) 2014/11/07(金) 10:34


 >REPLACE(LEFT(CELL("filename",$A$1),FIND(".",CELL("filename",$A$1))-1),1,FIND("[",CELL("filename",$A$1)),)
 >でやってみたのですが、どうしても拡張子が出てきてしまいます。 

 試しましたが拡張子は表示されませんでしたよ?
(カリーニン) 2014/11/07(金) 10:57

 前の部分が8桁数値と決まっているのならRIGHT関数やMID関数とLEN関数を組み合わせたらいいと
 思います。分からなかったら関数のヘルプを参照してください。
 また、デイトさんご提示のFIND関数も有効だと思います。
(カリーニン) 2014/11/07(金) 11:00

 逆にファイル名内に「.」が使われていると一番目の「.」以降が切り捨てられないか?

 例
 ファイル名:AAA.BBB.xls→AAA

(ねむねむ) 2014/11/07(金) 11:31


 コナミさんの案で
 =MID(TRIM(MID(SUBSTITUTE(SUBSTITUTE(CELL("filename"),"[",REPT(" ",100)),".xls",REPT(" ",100)),100,100)),9,100)

 こんな感じではできないですか?
 全部が全部試していないですが・・・
(稲葉) 2014/11/07(金) 12:54

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.