MyTetra Share
Делитесь знаниями!
Имя файла по полному пути
16.03.2019
23:43
Раздел: !Закладки - VBA - Access - msa.polarcom.ru - 12 Папки и Файлы

Имя файла по полному пути

Public Function GetFileNameByPath(varPath As Variant) As String

'Аргумент: varPach = Полный путь к файлу

'Возвращает имя файла (по указанному в аргументе) полному пути.

'--------------------------------------------------------------------

On Error GoTo GetFileNameByPath_Err

GetFileNameByPath = Mid(varPath, InStrRev(varPath, "\") + 1)

Exit Function


GetFileNameByPath_Err:

GetFileNameByPath = "FilePach ERR#" & Err.Number

End Function





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

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



Так же в этом разделе:
 
MyTetra Share v.0.52
Яндекс индекс цитирования