Página 1 de 1
COPIAR ABA ATUAL E COLAR EM UMA NOVA
Enviado: 02 Jun 2022 às 14:32
por Jore
Olá pessoal,
Tenho um código VBA para criar uma cópia da aba atual e onde uma caixa irá se abrir para eu colocar um nome para esta nova aba...
Aparentemente tudo funciona, eu ponho o novo nome mas a nova aba não aparece.
Alguém pode dar uma olhadinha para ver onde esta o erro por favor!
Segue a planilha em anexo.
Desde já agradeço a todos!
Re: COPIAR ABA ATUAL E COLAR EM UMA NOVA
Enviado: 03 Jun 2022 às 16:52
por Foxtri
Olá
Veja o código:
Sub NovaPlanilhaInputbox()
Dim wshNovaPlan As Worksheet
Dim wsTag As Worksheet
Dim i As Integer
Dim nome As String
On Error Resume Next ' Sempre coloque aqui em cima essa declaração e não no meio, combinado?
' Ela significa que se tiver um erro ela passa para a próxima instrução ou macro, então coloque
'ela sempre após declarar as ' variáveis
'Define a Planilha TAG, TAG é o nome da planilha
Set wsTag = ActiveSheet
'Se quiser que abra uma planilha específica ponha:Set wsTag = Sheets("nome da planilha")
'Congela a tela
Application.ScreenUpdating = False
'Nome da nova Sheet
nome = InputBox("Qual o nome da nova planilha?", "ATENÇÃO") 'solicita o nome da nova planilha
If nome = "" Then
Exit Sub
End If
'Conta quantidade de Planilhas
i = Worksheets.Count
'Copia a Planilha atual ou uma especifica após a última aba
wsTag.Copy After:=Worksheets(i)
i = i + 1
'Declaramos a Nova Planilha e Renomeamos
Set wshNovaPlan = Worksheets(i)
With wshNovaPlan
.Name = nome
.Range("A1").Select
End With
'No caso de ter Fórmulas e quiser só os valores utilizamos as linhas abaixo
'Copia a Planilha Ativa e cola sem as formulas
With wshNovaPlan.UsedRange
.Copy
.PasteSpecial Paste:=xlValues
.Range("A1").Select
End With
Application.CutCopyMode = False
End Sub
Até
Foxtri
Re: COPIAR ABA ATUAL E COLAR EM UMA NOVA
Enviado: 06 Jun 2022 às 10:36
por Jore
Re: COPIAR ABA ATUAL E COLAR EM UMA NOVA
Enviado: 06 Jun 2022 às 11:07
por osvaldomp
Olá,
@Jore .
#
Jore escreveu: ↑02 Jun 2022 às 14:32
Aparentemente tudo funciona, eu ponho o novo nome mas a nova aba não aparece.
Exclua o comando On Error Resume Next do seu código e então você vai descobrir porque "a nova planilha não aparece".
A propósito, com o propósito de ajudar e alertar, segue uma dica sobre aquele comando: pesquise e você poderá concluir que a observação que está no seu código (em verde à frente) é inconsistente e merece ser reavaliada. ~~~> "
Sempre coloque aqui em cima essa declaração e não no meio, combinado? ' Ela significa que se tiver um erro ela passa para a próxima instrução ou macro, então coloque 'ela sempre após declarar as ' variáveis"