2017-04-11 8 views
0

VBAを使用してファイルを選択してファイルを選択する方法はありますか?ファイルをクリックすると、その名前は拡張子(.txt)なしでコピーされ、 TEXT "、セルAZ2。perticularセルのファイル名を取得

私はいくつかのコードから始めましたが、動作しません。それ以上のことをする方法がわからない。

Sub Main_Macro() 
Dim fName As String, LastRowim As Long 

fName = Application.GetOpenFilename("Text Files (*.txt), *.adt") 
If fName = "False" Then Exit Sub 

End Sub 

答えて

0

getBaseName()メソッドを使用すると、拡張子なしのファイル名を取得できます。

+0

ありがとうございましたが、実際に私は、VBAのコーディングに非常に新しいです。コードに実装する方法を教えてくれればとても助かります。 – Sanoj

+0

コードで同じことを説明できますか?私はシート "テキスト"のセルAZ2に反映するファイル名が必要です。 – Sanoj

0

どのようにこのようなものについて:

Sub foo() 
    Dim fd As FileDialog 
    Dim fName As String ' Includes full path 
    Dim fChosen As Integer 
    Dim fNameFile As String 'Only the name of the file 

    Set fd = Application.FileDialog(msoFileDialogFilePicker) 'open dialog box 
      fd.Title = "Please select file" 'dialog Title 
      fd.InitialFileName = "C:\Users\" 'Path to initiate Dialog box 
      'fd.InitialFileName = ThisWorkbook.Path & "\" 'alternate initial path 
      fChosen = fd.Show 
        fd.Filters.Clear 
        'fd.Filters.Add "CSV files", "*.csv" 'add filters to only show this type of file 
        fd.Filters.Add "Text files", "*.txt" 'in this case only txt files will be selectable 

     If fChosen <> -1 Then 
      MsgBox "You Cancelled, nothing done!", vbInformation 
     Else 
      fName = Right$(fd.SelectedItems(1), Len(fd.SelectedItems(1)) - InStrRev(fd.SelectedItems(1), "\")) 'get full path of file, then remove anything prior to \ to get filename 
      Position = InStr(fName, ".") 'get the position of the extension 
      If Position > 0 Then Extension = Right(fName, Len(fName) - Position + 1) 'get the actual extension of the file 
      fName = Replace(fName, Extension, "") 'remove that extenstion 
      Sheets("TEXT").Range("AZ2").Value = fName 'enter the file name to your chosen range 
     End If 
End Sub 
関連する問題