Ir ao conteúdo
  • Cadastre-se

Visual Basic Copiar uma aba com base em outra e renomear com inputbox ou formulário


Ir à solução Resolvido por Midori,

Posts recomendados

26 minutos atrás, C.Lima2021 disse:

Como fazer agora para tirar erro do inputbox não respondido?

Faça um If na variável Renomear. Se não tiver nenhum texto é porque o input foi cancelado ou o usuário não digitou nada.

 

Se tentar renomear uma aba com nome repetido vai dar o erro 9. Uma alternativa é criar uma função para tratar esse erro antes de tentar copiar, p.ex,

 

Function PlanilhaExiste(Nome As String) As Boolean
    On Error Resume Next
    ThisWorkbook.Sheets(Nome).Activate
    PlanilhaExiste = Not Err.Number = 9
End Function

 

E na Sub do input,

If Renomear <> "" Then
    If Not PlanilhaExiste(Renomear) Then
        Sheets("BASE").Copy Before:=Sheets("BASE")
        ActiveSheet.Name = Renomear
    Else
        MsgBox "A planilha " & Renomear & " já existe", vbInformation
    End If
End If

 

  • Amei 1
Link para o comentário
Compartilhar em outros sites

O código completo pode ser assim,

 

Sub Macro()
    Dim Renomear As String
    
    Renomear = InputBox("Produto")
    
    If Renomear <> "" Then
        If Not PlanilhaExiste(Renomear) Then
            Sheets("BASE").Copy Before:=Sheets("BASE")
            ActiveSheet.Name = Renomear
        Else
            MsgBox "A planilha " & Renomear & " já existe", vbInformation
        End If
    End If
End Sub

Function PlanilhaExiste(Nome As String) As Boolean
    On Error Resume Next
    ThisWorkbook.Sheets(Nome).Activate
    PlanilhaExiste = Not Err.Number = 9
End Function

 

  • Amei 1
Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...