Vba имя файла из полного пути
Перейти к содержимому

Vba имя файла из полного пути

  • автор:

Имя Файла по полному Пути или определённую чать (только название или только расширение).

Более сложный вариант:
Может возвращаать не только имя файла, но и его определённую чать (только название или только расширение).

Public Function GetFileName(ByVal sPath As String, Optional NamePart As Integer = 0) As String 'Функция возвращает имя файла по полному пути к файлу (по умолчанию - NamePart = 0) 'Или часть имени файла: ' NamePart = 1 Только имя (без расширения) ' NamePart = 2 Только расширение '-------------------------------------------------------------------- Dim sFileName As String Dim iPos As Integer On Error GoTo GetFileName_Err 'Ищем позицию первого символа "\" (справа-налево) iPos = InStrRev(sPath, "\") sFileName = Mid(sPath, iPos + 1) Select Case NamePart Case 1 'Ищем позицию первого символа "." (справа-налево) iPos = InStrRev(sFileName, ".") sFileName = Mid(sFileName, 1, iPos - 1) 'Вырезаем имя файла из строки Case 2 'Ищем позицию первого символа "." (справа-налево) iPos = InStrRev(sFileName, ".") sFileName = Mid(sFileName, iPos + 1) ' Вырезаем расширение файла из строки End Select GetFileName = sFileName GetFileName_Bye: Exit Function GetFileName_Err: MsgBox "Error " & Err.Number & vbCrLf & Err.Description & vbCrLf & _ "in procedure GetFileName of Module modUtils", vbCritical, "Error!" Resume GetFileName_Bye End Function

Самый быстрый вариант

Public Function OnlyName(path) Dim File As String, Ext As String With Access.WizHook .Key = 51488399 .SplitPath path, vbNullString, vbNullString, File, Ext End With OnlyName = File & Ext End Function

Имя существующего файла по полному пути

Public Function FileNameByPath(sPath As String) As String 'es 09.05.2019 'Возвращает имя существующего файла по полному пути '-------------------------------------------------------------------------- Dim objFSO As Object Dim objFile As Object 'Dim lFileSize& '-------------------------------------------------------------------------- '?FileNameByPath("d:\Temp\19.pdf") On Error GoTo FileNameByPath_Err Set objFSO = CreateObject("Scripting.FileSystemObject") Set objFile = objFSO.GetFile(sPath) 'lFileSize = CLng(objFile.Size) 'Размер в байтах FileNameByPath = objFile.Name FileNameByPath_End: On Error Resume Next Err.Clear Exit Function FileNameByPath_Err: MsgBox "Error: " & Err.Number & vbCrLf & Err.Description & vbCrLf & _ "in Function: FileNameByPath in module: 00_Tests", vbCritical, "Error in Application" Err.Clear Resume FileNameByPath_End End Function

Определение названия файла функцией в Excel

Формула =ФАЙЛИМЯ(ПУТЬ) возвращает имя файла из полного пути к файлу. При этом существование файла не проверяется, функция работает вне зависимости расположен файл на вашем компьютере или доступа к файлу в данный момент нет. Также не важен тип файла: это может быть как документ Excel, так и текстовый файл. Функция имеет один аргумент:

  • ПУТЬ — Полный путь к файлу, наименование которого необходимо получить.

Пример

Далее представлен простой пример наглядно демонстрирующий работу функции

Извлечение имени файла из полного пути

Код на VBA

Function ФАЙЛИМЯ(ПУТЬ As String) As String Dim temp As Variant If ПУТЬ = "" Then ФАЙЛИМЯ = "": Exit Function temp = Split(ПУТЬ, Application.PathSeparator) ФАЙЛИМЯ = temp(UBound(temp)) End Function

Надстройка
VBA-Excel

Надстройка для Excel содержит большой набор полезных функций, с помощью которых вы значительно сократите время и увеличите скорость работы с программой.

Получить имя файла из пути

Author24 — интернет-сервис помощи студентам

Нкидаю на Лист список файлов для дальнейшего использования.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Private Sub CommandButton5_Click() Set fs = Application.FileSearch With fs .LookIn = 'd:pubgggw' .FileName = '*.xls' If .Execute(SortBy:=msoSortByFileName, _ SortOrder:=msoSortOrderAscending) > 0 Then For i = 1 To .FoundFiles.Count Cells(i + 5, 2).Value = .FoundFiles(i) Next i Else MsgBox 'There were no files found.' End If End With End Sub

_________
Нужно разорвать
d:pubgggwКнига1.xls
на две ячейки вот так
d:pubgggw Книга1.xls
Лучшие ответы ( 2 )
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:

C пути получить имя файла
Всем здрасте, у меня есть путь точнее много путей к каждому файлу в цыкле, выгледят так :\ .

Получить имя файла без полного пути
Вообщем такая задача необходимо знать название перемещаемого файла без директории в которой он.

Получить имя файла без полного пути
вы друзья уж простите, я 25 страниц пролистал в поиске но не нашел ответа (может не правильно.

Получить имя файла из его полного пути
Var a:string; b:string; Begin readln(a); End. В ‘a’ вводится будут ток адреса с файлом в.

Регистрация: 08.04.2009
Сообщений: 17

Лучший ответ

Сообщение было отмечено Памирыч как решение

Решение

1 2 3 4
FullName = 'd:pubgggwBook1.xls' i = InStr(1, StrReverse(FullName), ' ') Path = Left(FullName, Len(FullName) - i + 1) Name = Right(FullName, i - 1)

Лучший ответ

Сообщение было отмечено как решение

Решение

Используйте функцию InstrRev(. )
Пример:

1 2 3 4
full_path = 'c:dsssdsdsdfsdeer.xls' i = InStrRev(full_path, ' ', -1) file_name = Mid(full_path, i + 1) file_path = Mid(full_path, 1, i)

87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь

Получить имя файла без полного пути
Доброго времени суток! Я пытаюсь в заголовке формы записать имя считываемого файла, но в него.

Получить имя файла, без полного пути
Please Help)))) Мне надо чтобы выбрав файл в CommonDialog имя выбранного файл появилось в Label1.

SaveFileDialog: получить имя файла без полного пути
друзья подскажите, есть saveFielDialog, он возвращает FileName- т.е. путь+имя файла с расширением.

Из полного пути получить имя файла без расширения
Дана строка, содержащая полное имя файла, то есть имя диска, список каталогов (путь), собственно.

Или воспользуйтесь поиском по форуму:

Свойство Document.Path (Издатель)

Возвращает строку String , указывающую полный путь к файлу сохраненной активной публикации без учета последнего разделителя или имени файла.

Синтаксис

expression. Путь

Выражение Переменная, представляющая объект Document .

Замечания

Свойство FullName можно использовать для возврата пути и имени файла.

Пример

В следующем примере показаны различия между свойствами Path, Name и FullName . Этот пример лучше всего проиллюстрировать, если публикация сохраняется в папке, отличной от папки по умолчанию.

Sub PathNames() Dim strPath As String Dim strName As String Dim strFullName As String strPath = Application.ActiveDocument.Path strName = Application.ActiveDocument.Name strFullName = Application.ActiveDocument.FullName ' Note the file name & path differences ' while executing. MsgBox "The path is: " & strPath MsgBox "The file name is: " & strName MsgBox "The path & file name are: " & strFullName End Sub 

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.

Обратная связь

Были ли сведения на этой странице полезными?

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *