Olá!
Tenho uma pasta com vários arquivos .txt, e gostaria de reconhecer qual deles foi criado primeiro.
Preciso escrever o nome do arquivo em uma célula, o caminho dele em outra e a data de criação (Formato: 07/2015) em outra.
Alguém pode me auxiliar, por favor?
Vídeo recomendado
https://youtu.be/diWPPPhW-9E
https://youtu.be/diWPPPhW-9E
Arquivo mais antigo [RESOLVIDO]
-
- Colaborador
- Mensagens: 59
- Registrado em: Sáb Mar 15, 2014 5:48 pm
Arquivo mais antigo [RESOLVIDO]
Editado pela última vez por HUGO SOUZA em Ter Jul 28, 2015 6:19 pm, em um total de 1 vez.
-
- Colaborador
- Mensagens: 59
- Registrado em: Sáb Mar 15, 2014 5:48 pm
Re: Arquivo mais antigo
Raxei a cuca:
Sub Arquivo_mais_antigo()
Dim DT1, DT2 As Date
'Se quiser utilizar Early Binding, adicione a biblioteca Microsoft Scripting Runtime
'Mude esse valor para buscar outro caminho:
Const strCaminho As String = "H:\HUGO\VBA AUXILIAR"
'Declaração de variáveis:
Dim fso As Object 'Scripting.FileSystemObject
Dim fld As Object 'Scripting.Folder
Dim fl As Object 'Scripting.File
Dim n As Long
'Aqui é criado o objeto que comunica com as pastas do computador
Set fso = CreateObject("Scripting.FileSystemObject")
'Esse objeto executa um método do FileSystemObject
'para buscar atribuir à variável fld uma pasta
Set fld = fso.GetFolder(strCaminho)
With ActiveSheet
'Limpa e formata a Planilha ativa:
' .Cells.Delete
'Laço em cada arquivo do caminho desejado:
For Each fl In fld.Files
If fl.Type = "Documento de Texto" Then
DT1 = fl.DATECREATED
If DT2 = "00:00:00" Then
DT2 = fl.DATECREATED
Else
If DT1 < DT2 Then
DT2 = DT1
End If
End If
End If
Next fl
End With
ActiveCell.Value = DT2
End Sub
Sub Arquivo_mais_antigo()
Dim DT1, DT2 As Date
'Se quiser utilizar Early Binding, adicione a biblioteca Microsoft Scripting Runtime
'Mude esse valor para buscar outro caminho:
Const strCaminho As String = "H:\HUGO\VBA AUXILIAR"
'Declaração de variáveis:
Dim fso As Object 'Scripting.FileSystemObject
Dim fld As Object 'Scripting.Folder
Dim fl As Object 'Scripting.File
Dim n As Long
'Aqui é criado o objeto que comunica com as pastas do computador
Set fso = CreateObject("Scripting.FileSystemObject")
'Esse objeto executa um método do FileSystemObject
'para buscar atribuir à variável fld uma pasta
Set fld = fso.GetFolder(strCaminho)
With ActiveSheet
'Limpa e formata a Planilha ativa:
' .Cells.Delete
'Laço em cada arquivo do caminho desejado:
For Each fl In fld.Files
If fl.Type = "Documento de Texto" Then
DT1 = fl.DATECREATED
If DT2 = "00:00:00" Then
DT2 = fl.DATECREATED
Else
If DT1 < DT2 Then
DT2 = DT1
End If
End If
End If
Next fl
End With
ActiveCell.Value = DT2
End Sub