Страницы: 1
RSS
Список файлов в папке
 
Добрий день!

на форуме есть тема "Список файлов в папке" http://www.planetaexcel.ru/techniques/3/45/#7452
там есть макрос, добавляющий в текущую книгу новый пустой лист и выводящий на  него список
всех файлов с их параметрами из заданной пользователем папки
Прошу добавить еще такие параметры: автор, кем сохранен, владелец, компьютер,
ну и другие параметры которые не упомянул.
 
Мне кажется вам можно посмотреть на msdn и добавить любое свойство из списка слева на странице https://msdn.microsoft.com/en-us/library/office/gg264090.aspx
 
Мюсье, Ваши запросы несколько больше чем возможности используемого там объекта Scripting.FileSystemObject, а некоторые параметры не являются атрибутами файла ( компьютер). Следовательно это не добавить, а почти полностью переписать,  с учетом  этого
Цитата
sergey2303 написал:
и другие параметры которые не упомянул.
можно использовать Shell.Application
посмотрите тут пример на VBS.
Получает следующие данные
Name: 01 Beethoven Symphony #5.mp3
Size: 6,47 MB
Item type: MP3 File
Date modified: 27.08.2014 22:03
Date created: 10.02.2017 16:13
Date accessed: 10.02.2017 16:13
Attributes: AI
Offline status:
Availability: Available offline
Owner: .D*****N\b*******k
Kind: Music
Date taken:
Contributing artists:
Изменено: БМВ - 21.02.2017 11:16:51
По вопросам из тем форума, личку не читаю.
 
Доброе время суток.
Код для получения владельца файла. Кто ищет - тот найдёт.  ;)
Изменено: Андрей VG - 21.02.2017 11:10:13
 
как прикрутить функцию для получения владельца
Код
Function GetFileOwner(fileDir As String, fileName As String) As String
    Dim securityUtility As Object
    Dim securityDescriptor As Object
    Set securityUtility = CreateObject("ADsSecurityUtility")
    Set securityDescriptor = securityUtility.GetSecurityDescriptor(fileDir & fileName, 1, 1)
    GetFileOwner = securityDescriptor.owner
End Function
 
вызвать её в нужном для вас месте и передать туда SourceFolder.path и FileItem.Name
Код
       Cells(r, 6).Formula = GetFileOwner(SourceFolder.path,FileItem.Name)
По вопросам из тем форума, личку не читаю.
 
а как будет приглядеть строка функции
Код
Set securityDescriptor = securityUtility.GetSecurityDescriptor(fileDir & fileName, 1, 1)
 
функцию подогнал
Код
Function GetFileOwner(SourceFolder As String, FileItem As String) As String
    Dim securityUtility As Object
    Dim securityDescriptor As Object
    Set securityUtility = CreateObject("ADsSecurityUtility")
    Set securityDescriptor = securityUtility.GetSecurityDescriptor(SourceFolder & "\" & FileItem, 1, 1)
    GetFileOwner = securityDescriptor.Owner
End Function
получается владелец: организация\владелец, как убрать все от начала до \ включительно, что би получилось владелец
получилось
Код
Cells(r, 6).Formula = Mid(GetFileOwner(SourceFolder.Path, FileItem.Name), InStr(1, GetFileOwner(SourceFolder.Path, FileItem.Name), "\") + 1)
Изменено: sergey2303 - 21.02.2017 16:34:53
Страницы: 1
Наверх