VBA Obter nome da planilha / Renomear planilha

Este tutorial cobrirá a interação com nomes de planilhas no VBA.

Obter nome da folha

Os nomes das folhas são armazenados no Nome propriedade do Lençóis ou Fichas de trabalho objeto. O nome da planilha é o nome da “guia” que fica visível na parte inferior do Excel:

Obter nome do ActiveSheet

Isso exibirá o nome do ActiveSheet em uma caixa de mensagem:

1 MsgBox ActiveSheet.Name

Obter o nome da folha por número de índice

Isso exibirá o primeiro nome da planilha em uma caixa de mensagem:

1 Folhas MsgBox (1) .Nome

Isso exibirá o nome da última planilha na pasta de trabalho:

1 Folhas MsgBox (Sheets.Count) .Name

Obter o nome da folha por codinome

No Editor VBA, há uma opção para alterar o “nome do código” de uma planilha. O nome do código não é visível para o usuário do Excel e só pode ser visto no Editor VBA:

No VBA, ao trabalhar com o Planilhas, você pode fazer referência ao nome usual da guia:

1 Planilhas ("TabName"). Ativar

ou o nome de código VBA:

1 CodeName.Activate

Fazer referência ao nome do código é desejável no caso de o nome da guia Planilha mudar. Se você permitir o acesso do usuário do Excel para alterar os nomes das planilhas, deve fazer referência ao nome do código em seu código VBA para que uma incompatibilidade do nome da guia da planilha não cause um erro. Os nomes dos códigos das folhas são discutidos com mais detalhes aqui.

Para obter o nome da planilha usando o nome do código VBA, faça o seguinte:

1 MsgBox CodeName.Name

Renomear folha

Você pode renomear o Planilhas ajustando o nome propriedade do Lençóis ou Fichas de trabalho objeto.

Renomear ActiveSheet

1 ActiveSheet.Name = "NewName"

Renomear planilha por nome

1 Planilhas ("OldSheet"). Name = "NewName"

Renomear folha por número de índice de folha

Aqui, usamos 1 para renomear a primeira planilha na pasta de trabalho.

1 Folhas (1) .Nome = "NovoNome"

Renomear folha por nome de código

Este código renomeará uma planilha usando seu nome de código VBA (discutido acima):

1 Component.Name = "NewName"

Verifique se o nome da folha existe

Criamos uma função para testar se já existe uma planilha com um determinado nome.

123456789101112 'Teste se um intervalo existe em uma folha.'Deixe o intervalo em branco para testar se a folha existe'Entradas:'WhatSheet - String Name of Sheet (ex "Sheet1")'WhatRange (opcional, padrão = "A1") - Nome da string do intervalo (ex "A1")Função RangeExists (WhatSheet As String, Opcional ByVal WhatRange As String = "A1") As BooleanDim test As RangeOn Error Resume NextSet test = ActiveWorkbook.Sheets (WhatSheet) .Range (WhatRange)RangeExists = Err.Number = 0No erro GoTo 0Função Final

A função retornará TRUE se a planilha existir ou FALSE se não existir.

Use a função assim:

123 Sub Test_SheetExists ()MsgBox RangeExists ("configuração")End Sub

Copiar folha e renomear

Este exemplo é de nosso artigo sobre Cópia de planilhas.

Depois de copiar e colar uma planilha, a planilha recém-criada se torna a ActiveSheet. Portanto, para renomear uma planilha copiada, basta usar ActiveSheet.Name:

12345678 Sub CopySheetRename2 ()Planilhas ("Planilha1"). Copiar depois: = Planilhas (Planilhas.Contagem)On Error Resume NextActiveSheet.Name = "LastSheet"No erro GoTo 0End Sub

Observação: adicionamos o tratamento de erros para evitar erros se o nome da planilha já existir.

Você vai ajudar o desenvolvimento do site, compartilhando a página com seus amigos

wave wave wave wave wave