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
Por SandroLima
#44773
Bom dia, pessoal.

Tenho essa planilha que gera um arquivo PDF para impressão conforme a macro do botão "Gerar Impressão".

Precisava que a macro também gerasse dentro da planilha uma aba APENAS com o nome do mês (em letras maiúsculas. ex.: MAIO).

OBS:
1) As abas devem ser criadas e salvas na ordem correta dos meses do ano a medida que são criadas (JANEIRO - FEVEREIRO - MARÇO...) independente da ordem em que são geradas.

2) Caso já exista uma aba de um determinado mês do ano deve ser gerada uma msg de confirmação do tipo "Já existem lançamentos para o período informado. Deseja substituir as informações anteriores e gerar novo arquivo?" E sim ou não como resposta
Caso a resposta seja sim ele deve excluir a aba anterior (do mês informado) e salvar a nova planilha.

3) Depois de gerada a macro deve selecionar a nova planilha.

Sugestões de melhoria para a macro atual são bem vindas.

Segue planilha anexa.

Obrigado a quem puder ajudar.
Você não está autorizado a ver ou baixar esse anexo.
#44783
Boa tarde,

para gerar novas ABAS, verifica se essa macro ajuda.:
Código: Selecionar todos
Sub NovaPlanilha()

    Dim newPlan As Worksheet
    
    Set newPlan = Worksheets.Add
    
    With newPlan
        On Error GoTo Err_Handler1
        .Name = InputBox("Nome para nova folha de planilha?")
        On Error GoTo Err_Handler2
        .Move After:=Sheets(InputBox("Ap?s qual planilha a nova ser? inserida?"))
    End With
    
    On Error GoTo 0
    
    Set newPlan = Nothing
    
    Exit Sub
    
Err_Handler1:
    MsgBox "J? existe uma planilha com este nome. Informe novamente.", vbOKOnly + vbCritical
    Resume
    
Err_Handler2:
    MsgBox "Essa planilha n?o existe. Informe novamente.", vbOKOnly + vbCritical
    Resume
    
End Sub
Att
#44784
Boa noite, Kledison e demais usuários do fórum.

Obrigado pela intenção de ajudar.

Juntando a ideia da sua macro com a minha estou caminhando para atender o trabalho que necessito mas ainda preciso de ajuda.

Por enquanto foquei na parte de criar uma cópia da planilha em uma nova Aba e renomear a nova Aba.

Perceba que a macro funciona muito bem se ainda não existe uma aba com o novo nome pretendido (Mês).

Preciso agora que caso já exista uma planilha com o Mês selecionado que ela me pergunte se eu quero substituir a Aba existente por uma nova.

Até aqui tudo bem.

O que preciso agora:

1) Em caso afirmativo que ela apague a Aba anterior com o nome do Mês selecionado e gere uma nova Aba com o nome do Mês selecionado.
Porém não estou conseguindo fazer valer a linha:
Código: Selecionar todos
SendKeys "{ENTER}"
para excluir automaticamente a planilha selecionada

2) Caso a resposta seja não... que ela cancele ou não execute a parte da macro que gera uma nova aba com o nome do Mês selecionado.

Do jeito que está agora... quando ainda não há uma aba com o nome do mês selecionado ela funciona adequadamente. Quando escolho sim ou não ela executa a mesma rotina de quando eu escolho "SIM" na msgbox.

Preciso então corrigir duas coisas:
1) A Rotina para quando for escolhido "NÃO" na msgbox.
2) Automatizar a linha:
Código: Selecionar todos
SendKeys "{ENTER}"
que não esta funcionando

Segue planilha com a macro atualizada.
Você não está autorizado a ver ou baixar esse anexo.
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