Este fórum está sendo desativado

Depois de 9 anos, este fórum será desativado. Mas calma.... estamos migrando para uma comunidade no DISCORD. Junte-se a nós.

ENTRAR PARA DISCORD

Tópicos relacionados a códigos VBA, gravação de macros, etc.
  • Avatar do usuário
#49584
Boa tarde!

Estou com um macro que gera um .pdf de uma determinada seleção, porém precisava ajustar ele mas não estou conseguindo.

Preciso que o macro faça:
- Gerar .pdf de um intervalo de células pré-definido (A9:H27);
- Perguntar onde e com qual nome desejo salvar;

O macro que estava tentando ajustar é o seguinte:
Código: Selecionar todos
Sub SalvarPDF()
 Selection.ExportAsFixedFormat Type:=xlTypePDF, OpenAfterPublish:=True
 End Sub
Agradeço a ajuda!
#49587
Olá Felipe,

A sua macro está feita pra pegar o que estiver selecionado na planilha, e mandar pro PDF. Se quer a faixa A9:H27, basta selecioná-la antes de executar. Se quiser que essa faixa fique fixa, basta alterar o SELECTION da macro abaixo, por RANGE("A9:H27").

Se tiver várias planilhas e houver a possibilidade da macro rodar estando uma planilha selecionada, e os dados a serem exportados estarem em outra planilha, então tem que fazer ajustes. Me avise se for o caso. Da fora que está, a faixa A9:H27 (ou a selecionada) a ser exportada é sempre da planilha que está ativa.

Segue a macro:
Código: Selecionar todos
    Caminho = Application.GetSaveAsFilename("", _
             "PDF *.PDF,*.PDF,Tudo *.*,*.*", 1, "Escolha o local e nome para salvar o PDF.")
    
    Selection.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Caminho, _
        Quality:=xlQualityStandard, IncludeDocProperties:=True, _
        IgnorePrintAreas:=False, OpenAfterPublish:=False
Se esta mensagem colabora para a solução do problema, peço que dê um Like, clicando no botão com o "positivo", acima e a direita.

Jimmy San Juan
#49612
@Jimmy, obrigado pelo auxílio!

Inclui o seu código junto ao que estava montando e o resultado ficou exatamente como eu precisava.

Pelo fato da minha planilha ser bloqueada, não é permitido fazer uma seleção, portanto coloquei no código para ele fazer a seleção que necessito e posteriormente gerar o .pdf

Fica abaixo o código finalizado.
Código: Selecionar todos
Sub SalvarPDF()
    Range("A9:H27").Select
    
    Caminho = Application.GetSaveAsFilename("", _
             "PDF *.PDF,*.PDF,Tudo *.*,*.*", 1, "Escolha o local e nome para salvar o PDF.")
             
    Selection.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Caminho, _
        Quality:=xlQualityStandard, IncludeDocProperties:=True, _
        IgnorePrintAreas:=False, OpenAfterPublish:=True
 End Sub
Valeu, resolvido!
long long title how many chars? lets see 123 ok more? yes 60

We have created lots of YouTube videos just so you can achieve [...]

Another post test yes yes yes or no, maybe ni? :-/

The best flat phpBB theme around. Period. Fine craftmanship and [...]

Do you need a super MOD? Well here it is. chew on this

All you need is right here. Content tag, SEO, listing, Pizza and spaghetti [...]

Lasagna on me this time ok? I got plenty of cash

this should be fantastic. but what about links,images, bbcodes etc etc? [...]

Estamos migrando para uma comunidade no Discord