- ベストアンサー
ファイル名のみを取得するには?
Sub 取得() MsgBox ActiveWorkbook.Name End Sub を実行すると 「エクセル.xls」 と取得されますが 拡張子を除いたファイル名だけを取得するにはどうすればいいでしょうか? 「エクセル」だけを取得したいです。 よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
noname#90572
回答No.3
作ってみました Sub 取得() Dim bkName As String bkName = ActiveWorkbook.Name MsgBox Left(bkName, InStrRev(bkName, ".") - 1) End Sub 説明: ・ファイル名に.(ドット)が含まれていても正常に動作します。 ・2007形式の4文字の拡張子にも対応できます。
その他の回答 (2)
- imogasi
- ベストアンサー率27% (4737/17069)
回答No.2
多分加工して出さないと、XLSを除く部分に名称もついてないのでは。 小生の不知だけの恐れも有る。 一法は Sub 取得() MsgBox Split(ActiveWorkbook.Name, ".")(0) End Sub
質問者
お礼
ありがとうございます。
- hige_082
- ベストアンサー率50% (379/747)
回答No.1
Sub 取得() MsgBox left(ActiveWorkbook.Name,len(ActiveWorkbook.Name)-4) End Sub
質問者
お礼
右から4文字削っちゃえばいいんですね!ありがとうございます。
お礼
ありがとうございます。