Função Verificar se a Planilha e/ou o Intervalo Existe

Written by

Mel Jenkins

Reviewed by

Steve Rynearson

Translated by

Daniel Caramello

Last updated on September 8, 2023

Verificar se a Planilha Existe

Criamos uma função que testará se uma planilha ou intervalo (em uma determinada planilha) existe. O teste de intervalo é útil se você quiser verificar se um intervalo nomeado específico existe em uma planilha.

'Testar se um intervalo existe em uma planilha.
'Deixe o intervalo em branco para testar se a planilha existe
'Entradas:
' QualPlanilha - String do nome da planilha (ex.: "Planilha1")
' QualIntervalo (opcional, padrão = "A1") - String do nome do intervalo (ex.: "A1")
Function IntervaloExiste(QualPlanilha As String, Optional ByVal QualIntervalo As String = "A1") As Boolean
 Dim teste As Range
 On Error Resume Next
 Set teste = ActiveWorkbook.Sheets(QualPlanilha).Range(QualIntervalo)
 IntervaloExiste = Err.Number = 0
 On Error GoTo 0
End Function

Coloque a função em um módulo de código VBA e você poderá acessá-la usando subprocedimentos como estes:

Verificar se a Planilha Existe

Sub Testar_PlanilhaExiste()
 MsgBox IntervaloExiste("configuracao")
End Sub

Verificar se o Intervalo Existe em uma Planilha

Sub Testar_IntervaloExiste()
 MsgBox IntervaloExiste("configuracao", "rngEntrada")
End Sub

Ajuste da Função RangeExists

Verificar se a Planilha Existe em Outra Pasta de Trabalho

A função acima examinou a ActiveWorkbook (a pasta de trabalho ativa no momento). Em vez disso, você poderia ajustar a função para examinar uma pasta de trabalho específica, assim:

'Testar se um intervalo existe em uma planilha.
'Deixe o intervalo em branco para testar se a planilha existe
'Inputs:
' QualPasta - *Objeto Workbook*
' QualPlanilha - String do nome da planilha (ex.: "Planilha1")
' QualIntervalo (opcional, padrão = "A1") - String do nome do intervalo (ex.: "A1")
Function IntervaloExiste(QualPasta As Workbook, QualPlanilha As String, Optional ByVal QualIntervalo As String = "A1") As Boolean
 Dim teste As Range
 On Error Resume Next
 Set teste = QualPasta.Sheets(QualPlanilha).Range(QualIntervalo)
 IntervaloExiste = Err.Number = 0
 On Error GoTo 0
End Function

Implementação

Sub Testar_PastaPlanilha_Existe()
 Dim wb As Workbook
 Set wb = ActiveWorkbook

 MsgBox IntervaloExiste(wb, "Planilha1")

End Sub
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