Notifications
Clear all

pesquisar e apagar arquivos pdf

10 Posts
3 Usuários
0 Reactions
1,657 Visualizações
(@mwilson)
Posts: 6
Active Member
Topic starter
 

Olá amigos

Preciso de uma macro que faça o seguinte.
quando eu digitar um determinado código em uma célula por exemplo 40-003-00 a macro vai abrir uma pasta específica no HD onde salvo todos os meus arquivos PDF e procurar todos os arquivos que contenha a parte central do código ex. xx-003-xx e apaga-los e se possivel mostrar uma lista de todos os arquivos excluidos.

Obrigado pela ajuda

 
Postado : 17/12/2013 11:18 am
Wagner Morel
(@wagner-morel-vidal-nobre)
Posts: 0
Illustrious Member
 

Perguntinha básica: o que você quer dizer com "que contenha a parte central do código"? Essa parte central faz parte do nome do arquivo ou está dentro do arquivo? Se for o nome do arquivo, como são os nomes dos arquivos?

Desenvolvo pequenas soluções em VBA Excel a valores que variam entre R$ 50,00 a R$ 200,00. Se te interessar, entre no meu instagran (vba_excel_desenvolvimento)

Atenciosamente
Wagner Morel

 
Postado : 17/12/2013 12:08 pm
(@mwilson)
Posts: 6
Active Member
Topic starter
 

Oi Wagner
Faz parte do nome do arquivo, o nome dos arquivos tem sempre uma mesma sequencia ex:
começam com 40-125789-00, 40-423878-00, 10-568987-00 etc. o que vou digitar na célula são os 6 numeros centrais.

obrigado

 
Postado : 18/12/2013 5:02 am
Wagner Morel
(@wagner-morel-vidal-nobre)
Posts: 0
Illustrious Member
 

A parte central que você digitará na célula e a parte central no nome do arquivo sempre terá 6 caracteres? Sempre serão números?

Desenvolvo pequenas soluções em VBA Excel a valores que variam entre R$ 50,00 a R$ 200,00. Se te interessar, entre no meu instagran (vba_excel_desenvolvimento)

Atenciosamente
Wagner Morel

 
Postado : 18/12/2013 5:56 am
(@mwilson)
Posts: 6
Active Member
Topic starter
 

Correto Wagner, serão sempre 6 caracteres e sómente numeros

 
Postado : 18/12/2013 6:10 am
Wagner Morel
(@wagner-morel-vidal-nobre)
Posts: 0
Illustrious Member
 

mwilson,

Boa Noite!

Bem... ainda faltaram alguns detalhes, todavia, segue, abaixo, um pequeno exemplo que faz o que você pediu: apagar arquivos PDF, em uma pasta determinada, cuja parte do nome do arquivo (os 6 números que ficam no meio) seja igual a parte do nome que foi digitado em uma célula (a parte dos 6 números que ficam no meio desse nome). Para o exemplo do arquivo anexo, estou utilizando a célula B1 para digitar o nome que deve ser pesquisado na pasta de arquivos PDF's. Se os arquivos forem encontrados, serão listados na própria planilha e em seguida apagados da pasta. Você deve atentar para trocar o caminho da pasta que coloquei no código para o caminho onde esta seus arquivos PDF's.

Veja se assim lhe atende.

Desenvolvo pequenas soluções em VBA Excel a valores que variam entre R$ 50,00 a R$ 200,00. Se te interessar, entre no meu instagran (vba_excel_desenvolvimento)

Atenciosamente
Wagner Morel

 
Postado : 18/12/2013 7:41 pm
(@mwilson)
Posts: 6
Active Member
Topic starter
 

Wagner,

Bom dia

Puxa vida.. ficou exatamente o que eu precisava.. muito bom
a unica coisa é que na planilha fica listado o nome de só um arquivo, mas não tem problema algum
muito obrigado

valeu
Mário Wilson

 
Postado : 19/12/2013 6:10 am
Wagner Morel
(@wagner-morel-vidal-nobre)
Posts: 0
Illustrious Member
 

mwilson,

Bom Dia!

Você tem razão! É que na pressa, acabei esquecendo de incrementar a linha onde os arquivos são registrados. Essa nova versão já conserta isso.

Desenvolvo pequenas soluções em VBA Excel a valores que variam entre R$ 50,00 a R$ 200,00. Se te interessar, entre no meu instagran (vba_excel_desenvolvimento)

Atenciosamente
Wagner Morel

 
Postado : 19/12/2013 8:42 am
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa tarde!!

Uma outra forma (não tão sofisticada quanto a do Wagner).
Digite em A1 os caracteres do meio **-008-**

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Dim fName As String
    Dim fPath As String
    Dim fullName As String

    Const pdfcol As String = "A"
     
    If Target.Count > 1 Then Exit Sub
    If Target.Column <> Columns(pdfcol).Column Then Exit Sub
    If Target.Row < 2 Then Exit Sub
    If IsEmpty(Target) Then Exit Sub
    If Not IsNumeric(Target.Value) Then Exit Sub
     
             'Digite aqui o seu caminho
    fPath = "C:Documents and SettingsUserDesktopArquivosPDF"
     
    fName = ActiveCell.Value
    fName = Mid(fName, 4, 3)
     
    fName = "*" & fName & "*" & ".pdf"
     
    fullName = fPath & Dir(fPath & fName)
     
    If fullName = fPath Then
         On Error Resume Next
    Else
        Kill "C:Documents and SettingsUserDesktopArquivosPDF40-" & Range("A1").Value & "-00.pdf"
    End If
     
End Sub

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 19/12/2013 12:05 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Caso seja necessário reabrir o tópico, o autor poderá enviar uma MP para um dos moderadores solicitando o desbloqueio.

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 22/12/2013 7:16 pm