Página 1 de 1

Salvar arquivos em local especifico

Enviado: 16 Nov 2017 às 10:33
por RobinLima
Olá caros colegas, não entendo nada de VBA e estou precisando de uma grande ajuda.
Eu tenho um relatório em tabela dinâmica e foi colocado nela um código VBA que filtra o nome dos vendedores e gera um PDF para cada um deles e salva em meus documentos.
Gostaria de saber como faço para salvar em outro local, exemplo "C:\Users\robinson\Desktop\CAMPANHA 2017".
Outra coisa, é possível enviar esses PDFs para seus respectivos, com PARA, CC, ASSUNTO e frase padrão?

Agradeço desde já!

Segue o código que utilizo.

Código: Selecionar todos
Sub Gerar_PDF()


Application.ScreenUpdating = False

Dim tdc(500) As Variant

ActiveSheet.PivotTables("Tabela dinâmica1").ClearAllFilters

With ActiveSheet.PivotTables("Tabela dinâmica1")
c = .PivotFields("Ult. Vendedor2").PivotItems.Count
 For i = 1 To .PivotFields("Ult. Vendedor2").PivotItems.Count
 
 tdc(r) = .PivotFields("Ult. Vendedor2").PivotItems(i).Name
 r = r + 1
 
 Next
 
End With

   ' CNPJ RAZÃO -------------------------------------------------------------------
   
With ActiveSheet.PivotTables("Tabela dinâmica1").PivotFields("Ult. Vendedor")
        .PivotItems("").Visible = False
        
    End With


i = 0
For i = 0 To c - 1

ActiveSheet.PivotTables("Tabela dinâmica1").PivotFields("Ult. Vendedor2"). _
    CurrentPage = "(All)"
ActiveSheet.PivotTables("Tabela dinâmica1").PivotFields("Ult. Vendedor2"). _
        CurrentPage = tdc(i)

s = Range("b2").Value + " - CLIENTES INATIVOS"
sSpecialChars = "\/:*?®<>|&@#`©~^$!,'"
    For ii = 1 To Len(sSpecialChars)
        s = Replace(s, Mid$(sSpecialChars, ii, 1), "")
    Next


    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        s, Quality:=xlQualityMinimum, IgnorePrintAreas:=True, OpenAfterPublish:=False
        
Next i

        
            
     ' FIM -------------------------------------------------------------------
        
        

    
ActiveSheet.PivotTables("Tabela dinâmica1").ClearAllFilters

Application.ScreenUpdating = True

        
End Sub

Re: Salvar arquivos em local especifico

Enviado: 16 Nov 2017 às 14:31
por alexandrevba
Boa tarde!!

Tente adaptar a variável que é recebida pelo parâmetro Filename:=.
Tipo...
Código: Selecionar todos
 Filename:="C:\Users\robinson\Desktop\CAMPANHA 2017\" & ...etc
Veja também:
https://msdn.microsoft.com/pt-br/vba/ex ... thod-excel
http://exceler.blogspot.com.br/2005/04/ ... aveas.html

Att

Re: Salvar arquivos em local especifico

Enviado: 16 Nov 2017 às 16:00
por RobinLima
Fiz o que você disse e ficou ótimo, salvou no local que especifiquei, obrigado :D

Agora gostaria de saber se é muito complicado para anexar esses arquivos por e-mail para enviar, para cada um dos vendedores, com copia, assunto e texto padrão.

Re: Salvar arquivos em local especifico

Enviado: 22 Nov 2017 às 07:30
por alexandrevba
Bom dia!!

Eu sempre consulto (na minha opinião), um dos melhores MVP's do planeta de nome rondebruin,que deixa bem explicado e documentado alguns truques em VBA
Se ler com calma, vai entender, pois é bem explicativo.
https://www.rondebruin.nl/win/s1/outlook/mail.htm
https://www.rondebruin.nl/win/s1/outlook/saveatt.htm
Eu já adaptei demasiadas vezes sem problemas.
Faça sua parte tente adaptar, caso não conseguir, vamos te ajudar!!!!

Att

Salvar arquivos em local especifico

Enviado: 22 Nov 2017 às 09:14
por RobinLima
:D Olá, bom dia!
Perfeito, obrigado.