Notifications
Clear all

Macro Imprimir pdf colocando o nome

16 Posts
3 Usuários
0 Reactions
18.8 K Visualizações
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Olá senhores, gostaria de uma macro que imprimisse em pdf e salva-se com o nome na celula A1 ou o proprio nome da aba da planilha. É possível? PS.: O Programa que uso para gerar pdf eh o Cutepdf.

 
Postado : 20/08/2010 6:46 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Macro para poder gerar arquivo em PDF com nome da célula escolhida

Sub Impressão()
'
' Relatório Macro
' imprimir nome
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"w:RelatórioRelatório " & ActiveSheet.Range("xfc3").Value& & ".pdf", Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False

End Sub

============================================================================

Ai esta uma macro que uso, acredito que só alterar as informações.

Ja abusando... alguem poderia me dizer como faria para salvar utilizando duas celulas (xfc3 e xfc 2) por exemplo?

Pois ao preencher eu precisaria que salvasse com nome e data conforme preenchido nessas celulas informadas.
Outra duvida, ao inves de renomear ".pdf", se colocar ".xlsx" ele salvara como formato excel direto?

Abraços

 
Postado : 30/08/2010 9:35 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Amigos

Alguem pode me ajudar??

A macro abaixo e a mesma que o topico acima, porem infelizmente, a mesma não quer salvar eu alterando a celula para j14.

outro problema que estou e que precisaria concatenar com 3 celulas... na hora de salvar e não consigo.

alguem me ajuda?

ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"N:SGNRelatório MonitoramentoRelatório " & ActiveSheet.Range("xfc3").Value& & ".pdf", Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False

Como disse precisaria que salvasse com o que estiver na J14, b21 e d14.

abraços

 
Postado : 27/09/2010 1:20 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"N:SGNRelatório MonitoramentoRelatório " & ActiveSheet.Range("j14").Value& & ActiveSheet.Range("b21").Value& & ActiveSheet.Range("d14").Value& & ".pdf", Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False

Consegui ....

Abraços

 
Postado : 27/09/2010 1:23 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"N:SGNRelatório MonitoramentoRelatório " & ActiveSheet.Range("j14").Value& & ActiveSheet.Range("b21").Value& & ActiveSheet.Range("d14").Value& & ".pdf", Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False

Consegui ....

Abraços

Ja abusando .. sem abusar muito,

A celula J14 e nome dos vendedores que possuem suas pastas no diretorio.
Teria como o código automaticamente ler a celula j14, e salvar na pasta correta?

Por exemplo: Celula J14 esta o Nome Andre (esta com validação)
No diretorio N:SGNRelatório MonitoramentoRelatório existe a pasta Andre, ai automaticamente ela iria salvar na pasta dele.
se Alterar o Nome do vendedor, salvaria dentro do nome do vendedor... escolhido.

abraços

 
Postado : 27/09/2010 1:35 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 


JPerez...

fica mais fácil se trabalhar com variáveis:

(Veja se o caminho ficou certo)

Dim pasta As String
Dim arq As String

pasta = ActiveSheet.Range("J14").Value
arq = ActiveSheet.Range("J14").Value & ActiveSheet.Range("B21").Value & ActiveSheet.Range("D14").Value & ".pdf"

ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"N:SGNRelatório MonitoramentoRelatório" & pasta & "" & arq, Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=False

 
Postado : 27/09/2010 6:56 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Infelizmente esta dando erro.....

http://www.4shared.com/photo/q-1P6uZi/Erro.html

poderia me ajudar???

A saber, no caminho (N:SGNRelatório MonitoramentoRelatório)
Ja possui todas as pastas dos 45 vendedores.

A celula j14 ja possui validação ou seja e obrigado escolher um dos 45 vendedores.
Como disse, ao escolher e clicar no botão salvar automaticamente salvaria na pasta do mesmo.

O estranho foi o erro causado.

abraços

 
Postado : 28/09/2010 7:40 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 


Criei uma pasta como indicado, porém, em C:

E usei a Macro abaixo e criou o PDF normalmente...

Sugiro que enxugue seu arquivo e disponibilize um pequeno modelo, caso ainda não consiga gerar o PDF.

Sub Macro1()

pasta = ActiveSheet.Range("J14").Value
arq = ActiveSheet.Range("J14").Value & ActiveSheet.Range("B21").Value & ActiveSheet.Range("D14").Value & ".pdf"

ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"C:SGNRelatório MonitoramentoRelatório" & pasta & "" & arq, Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=True

End Sub

 
Postado : 28/09/2010 5:06 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Edson

Muito obrigado mesmo pela ajuda, porem ela esta aparecendo aquela mesma mensagem de erro.

Fiz sua orientação mas tbm naum consegui. ( mesmo mudando para o C)

Abraços e obrigado.....

Se conseguir aqui te aviso

 
Postado : 30/09/2010 6:34 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Aproveitando este tópico, estou tentando fazer a mesma coisa, gravar em PDF uma página do excel, com o nome do Pedido, na pasta Garantias

Pasta que quero gravar os PDFs: Z:DesenhosGARANTIASGarantias Bolsão
Nome do arquivo deve ser o Pedido (Página "Formulário" - Célula D11)

Link para o arquivo: http://www.4shared.com/document/54G1i95l/Exemplo.html

Fico no aguardo! :D

 
Postado : 09/11/2010 12:32 pm
(@jebrito)
Posts: 4
New Member
 

Estou usando assim

Sub Macro1()

pasta = ActiveSheet.Range("J14").Value
arq = ActiveSheet.Range("J14").Value & ActiveSheet.Range("B21").Value & ActiveSheet.Range("D14").Value & ".pdf"

ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, FileName:= _
"C:" & pasta & "" & arq, Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=True

End Sub

Porém quando vou executar presenta uma mensagem de erro "Erro em tempo de execução "438"
o que esta errado?

Grato

 
Postado : 28/01/2012 7:58 am
(@jebrito)
Posts: 4
New Member
 

estou colocando da seguinte forma

Sub Macro1()

pasta = ActiveSheet.Range("J14").Value
arq = ActiveSheet.Range("J14").Value & ActiveSheet.Range("B21").Value & ActiveSheet.Range("D14").Value & ".pdf"

ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, FileName:= _
"C:" & pasta & "" & arq, Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=True

End Sub

Porém aparece "erro de tempo de execução 438"
O que está errado, tenho que ter uma impressora pdf instalado?

 
Postado : 28/01/2012 8:02 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

O erro de execução, provavelmente é por não "encontrar" o caminho para salvar o arquivo.
experimente, verificar se o diretorio foi encontrado antes de salvar o pdf, para ver ser o erro é por isso

Sub Macro1()
Dim Pasta As String, MyPath As String

Pasta = ActiveSheet.Range("J14").Value
arq = ActiveSheet.Range("J14").Value & ActiveSheet.Range("B21").Value & ActiveSheet.Range("D14").Value & ".pdf"
MyPath = "c:" 'Indica em que local a pasta estará , pode ser C: ou d: ou e:....
'Verifica se o diretorio existe
If (Dir(MyPath & Pasta, vbDirectory) = "") Then
MsgBox "Diretório - " & MyPath & Pasta & " - Não encontrado"
' se não existir, cria se quiser
' MkDir (MyPath & Pasta)
End If
'Verifica se o arquivo já existe, se existir, deleta
'If (Dir(Arquivo) <> "") Then
' Kill Arquivo
'End If

ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"C:" & Pasta & "" & arq, Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=True

End Sub

 
Postado : 28/01/2012 10:16 am
(@jebrito)
Posts: 4
New Member
 

Olá Reinaldo

Desculpe minha ignorância, mas, agora quando vou executar a macro apresenta a caixa "O objeto não aceita esta propriedade ou método" e no Visual basic " erro em tempo de execução '438': O objeto não aceita esta propriedade ou método"
Grato pela colaboração e compreensão

Jeandro

 
Postado : 29/01/2012 8:30 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Olá Reinaldo

Desculpe minha ignorância, mas, agora quando vou executar a macro apresenta a caixa "O objeto não aceita esta propriedade ou método" e no Visual basic " erro em tempo de execução '438': O objeto não aceita esta propriedade ou método"
Grato pela colaboração e compreensão

Jeandro

Segue um exemplo, lembrando que essa sintese, sómente funciona em excel 2007 e acima

 
Postado : 30/01/2012 7:19 am
Página 1 / 2