Rotina VBA para adicionar e nomear planilhas

Written by

Mel Jenkins

Reviewed by

Steve Rynearson

Translated by

Daniel Caramello

Last updated on July 5, 2023

Este tutorial abordará como adicionar/inserir planilhas usando o VBA.

Adicionar planilha

Essa macro simples adicionará uma planilha antes da ActiveSheet:

Sub Adicionar()
    Sheets.Add
End Sub

Depois que você inserir uma planilha, a nova planilha se tornará a ActiveSheet. Em seguida, você pode usar o objeto ActiveSheet para trabalhar com a nova planilha (no final deste artigo, mostraremos como inserir uma nova planilha diretamente em uma variável).

ActiveSheet.Name = "NovaPlanilha"

Adicionar uma Planilha com um Nome

Você também pode definir um nome de planilha ao criar a nova planilha:

Sheets.Add.Name = "NovaPlanilha"

Criar Nova Planilha com Nome de uma Célula

Ou usar um valor de célula para nomear uma nova planilha:

Sheets.Add.Name = range("a3").value

Adicionar Planilha Antes / Depois de Outra Planilha

Talvez você também queira escolher o local onde a nova planilha será inserida. Você pode usar as propriedades After (Depois) ou Before (Antes) para inserir uma planilha em um local específico da pasta de trabalho.

Inserir Planilha Após Outra Planilha

Esse código inserirá a nova planilha DEPOIS de outra planilha:

Sheets.Add After:=Sheets("Entrada")

Isso inserirá uma nova planilha DEPOIS de outra planilha e especificará o nome da planilha:

Sheets.Add(After:=Sheets("Entrada")).Name = "NovaPlanilha"

Observe o parêntese extra necessário no segundo exemplo (o primeiro exemplo gerará um erro se o segundo parêntese for adicionado).

local nova planilha

ou Antes:

Sheets.Add(Before:=Sheets("Entrada")).Name = "NovaPlanilha"

Nesses exemplos, nomeamos explicitamente a planilha usada para determinar o local da planilha. Muitas vezes, em vez disso, você desejará usar o número de índice da planilha, para que possa inseri-la no início ou no final da pasta de trabalho:

Adicionar Planilha ao Final da Pasta de Trabalho

Para adicionar uma planilha ao final da pasta de trabalho:

Sheets.Add After:=Sheets(Sheets.Count)

Adicionar planilha ao início da pasta de trabalho:

Para adicionar uma planilha ao início da pasta de trabalho:

Sheets.Add(Before:=Sheets(1)).Name = "PrimeiraPlanilha"

Adicionar Planilha à Variável

Esse código atribui a nova planilha a uma variável à medida que a planilha é criada:

Dim ws As Worksheet
Set ws = Sheets.Add

A partir daqui, você pode fazer referência à nova planilha com a variável ‘ws’:

ws.name = "PlanilhaVar"

Mais Exemplos de Como Adicionar uma Planilha

Criar Planilha Se Ela Ainda Não Existir

Talvez você queira criar uma planilha somente se ela ainda não existir.

Criação de Planilhas a Partir de uma Lista de Nomes

A rotina a seguir examinará o conteúdo de uma única coluna e criará planilhas do Excel na pasta de trabalho atual com esses nomes. Ela faz uma chamada para outra função para verificar se já existe uma planilha com esse nome e, se existir, a planilha não será criada.

Private Sub CommandButton1_Click()

Call CriarPlanilhas(Sheets("Planilha2").Range("A1:a10"))

End Sub

Sub CriarPlanilhas(Nomes_Das_Planilhas As Range)
Dim Numero_das_Palnilhas_a_Adicionar As Integer
Dim Nome_Planilha As String
Dim i As Integer

Numero_das_Palnilhas_a_Adicionar = Nomes_Das_Planilhas.Rows.Count

For i = 1 To Numero_das_Palnilhas_a_Adicionar

   Nome_Planilha = Nomes_Das_Planilhas.Cells(i, 1).Value

   'Somente adicione a planilha se ela ainda não existir e se o nome tiver mais de zero caracteres

   If (Planilha_Existe(Nome_Planilha) = False) And (Nome_Planilha <> "") Then
       Worksheets.Add().Name = Nome_Planilha
   End If

Next i

End Sub
Function Planilha_Existe(Nome_Da_Planilha As String) As Boolean
Dim Planilha As Worksheet

Planilha_Existe = False

For Each Planilha In ThisWorkbook.Worksheets

    If Planilha.Name = Nome_Da_Planilha Then
        Planilha_Existe = True
    End If

Next

End Function

Portanto, se tivermos o seguinte texto nas células A1:A30 na Planilha 2:

lista nomes planilhas

Serão criadas as seguintes planilhas:

planilhas apos criacao

Observe que, embora “Cachorro” apareça duas vezes, apenas uma planilha é criada.

Para fazer download do arquivo .XLS deste tutorial, clique aqui.

Codificação VBA facilitada

Pare de procurar códigos VBA on-line. Saiba mais sobre o AutoMacro – um construtor de código VBA que permite que os iniciantes codifiquem procedimentos do zero com o mínimo de conhecimento de codificação e com muitos recursos que economizam tempo para todos os usuários!

alt text

Saiba mais!


<<Voltar para exemplos de VBA

vba-free-addin

Exemplos de Add-ins de Códigos VBA

Acesse facilmente todos os exemplos de código que se encontram em nosso site.

Simply navigate to the menu, click, and the code will be inserted directly into your module. .xlam add-in.

(Nenhuma instalação necessária!)

Baixe de Graça

Retornar aos Exemplos de Códigos VBA