Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


2321 / 13646 ツリー ←次へ | 前へ→

【68745】ファイル名の取得 質問 11/4/13(水) 15:30 質問[未読]
【68746】Re:ファイル名の取得 momo 11/4/13(水) 16:05 発言[未読]
【68747】Re:ファイル名の取得 UO3 11/4/13(水) 18:01 回答[未読]
【68748】Re:ファイル名の取得 UO3 11/4/13(水) 18:06 発言[未読]
【68754】Re:ファイル名の取得 質問 11/4/14(木) 9:08 お礼[未読]
【68749】Re:ファイル名の取得 りん 11/4/13(水) 18:38 発言[未読]
【68755】Re:ファイル名の取得 質問 11/4/14(木) 9:09 お礼[未読]

【68745】ファイル名の取得
質問  質問  - 11/4/13(水) 15:30 -

引用なし
パスワード
   どうにも進まないので教えてください。
サーバー上にあるファイルを
' 「ファイルを開く」のフォームでファイル名の指定を受ける
  xlAPP.StatusBar = "読み込むファイル名を指定して下さい。"
  strFILENAME = xlAPP.GetOpenFilename(FileFilter:=cnsFILTER, _
    Title:=cnsTITLE)
で取得しましたが、最後のファイル名のみ取得する方法を教えて
ください。

c:\AA\BB\CC\DD\EE\FFFF.CSV

AA,BB,CC,DD,EEは各フォルダ名でFFFF.CSVがファイル名ですが
FFFF.CSVのFFのファイル名の長さは変更となります。

以上お手数ですが教えてください。

【68746】Re:ファイル名の取得
発言  momo  - 11/4/13(水) 16:05 -

引用なし
パスワード
   ▼質問 さん:

こんな感じでどうでしょう?

Sub test()
Dim a As String, b As String
a = "c:\AA\BB\CC\DD\EE\FFFF.CSV"
b = StrReverse(Split(StrReverse(a), "\")(0))
MsgBox b
End Sub

【68747】Re:ファイル名の取得
回答  UO3  - 11/4/13(水) 18:01 -

引用なし
パスワード
   ▼質問 さん:

あるいはこんなのとか。

Sub Testその2()
  Dim s As String, f As Variant
  s = "c:\AA\BB\CC\DD\EE\FFFF.CSV"
  f = Split(s, "\")
  MsgBox f(UBound(f))
End Sub

【68748】Re:ファイル名の取得
発言  UO3  - 11/4/13(水) 18:06 -

引用なし
パスワード
   ▼質問 さん:

もっと「おおげさ」にしたかったら、

Sub Testその3()
  Dim fso As Object
  Dim s As String, f As String

  Set fso = CreateObject("Scripting.FileSystemObject")
  s = "c:\AA\BB\CC\DD\EE\FFFF.CSV"
  f = fso.GetFileName(s)
  MsgBox f
  Set fso = Nothing
  
End Sub

【68749】Re:ファイル名の取得
発言  りん E-MAIL  - 11/4/13(水) 18:38 -

引用なし
パスワード
   質問 さん、こんばんわ。

>どうにも進まないので教えてください。
>サーバー上にあるファイルを
>' 「ファイルを開く」のフォームでファイル名の指定を受ける
>  xlAPP.StatusBar = "読み込むファイル名を指定して下さい。"
>  strFILENAME = xlAPP.GetOpenFilename(FileFilter:=cnsFILTER, _
>    Title:=cnsTITLE)
>で取得しましたが、最後のファイル名のみ取得する方法を教えて
>ください。
>
>c:\AA\BB\CC\DD\EE\FFFF.CSV
>
>AA,BB,CC,DD,EEは各フォルダ名でFFFF.CSVがファイル名ですが
>FFFF.CSVのFFのファイル名の長さは変更となります。
>
>以上お手数ですが教えてください。

Dir(strFILENAME)でよいのでは?


  MsgBox Dir(strFILENAME), vbInformation, strFILENAME

で確認できます。

【68754】Re:ファイル名の取得
お礼  質問  - 11/4/14(木) 9:08 -

引用なし
パスワード
   色々ありがとうございました


▼UO3 さん:
>▼質問 さん:
>
>もっと「おおげさ」にしたかったら、
>
>Sub Testその3()
>  Dim fso As Object
>  Dim s As String, f As String
>
>  Set fso = CreateObject("Scripting.FileSystemObject")
>  s = "c:\AA\BB\CC\DD\EE\FFFF.CSV"
>  f = fso.GetFileName(s)
>  MsgBox f
>  Set fso = Nothing
>  
>End Sub

【68755】Re:ファイル名の取得
お礼  質問  - 11/4/14(木) 9:09 -

引用なし
パスワード
   ▼りん さん:

色々ありがとうございました

2321 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free