Corrigir Erro 438 do VBA – O Objeto Não Aceita Essa Propriedade ou Método

Written by

Mel Jenkins

Reviewed by

Steve Rynearson

Translated by

Daniel Caramello

Last updated on September 12, 2023

Este artigo irá demonstrar como Corrigir o Erro 438 do VBA – O Objeto Não Aceite Essa Propriedade ou Método.

O Erro 438 é uma ocorrência frequente no VBA Excel e é causado tanto pela omissão de uma propriedade ou método ao fazer referência a um objeto, quanto por utilizar uma propriedade ou método que não está disponível para um determinado objeto no VBA.

Checando o Código VBA para Corrigir o Erro 438

Vamos examinar o código a seguir:

Sub RemoverPlanilha()
  Dim wbPastaTrab As Workbook
  Dim wsPlanilha As Worksheet
  Dim nomePlanilha As String
  nomePlanilha = "Planilha1"
  Set wbPastaTrab = ActiveWorkbook
  For Each wsPlanilha In wbPastaTrab.Sheets
     If wsPlanilha = nomePlanilha Then
        wbPastaTrab.Sheets(nomePlanilha).Delete
        Exit For
     End If
  Next wsPlanilha 
End Sub

 

Se executarmos esse código, o Erro 438 ocorrerá.

 

vba error 438

 

Para resolver este problema, clicaremos em Depurar para ver onde o erro está ocorrendo.

 

vba erro 438 depurar

 

A linha de código destacada em amarelo está tentando comparar a planilha (representada pela variável wsPlanilha) com o Nome da Planilha. Isto não é possível, pois a planilha é um objeto, enquanto que o Nome da Planilha é uma String (cadeia de caracteres), por isso, o Erro 438 acionado.

Para resolver isto, compare a string nomePlanilha com o propriedade Name do objeto worksheet:

wsPlanilha.name = nomePlanilha

Agora o código pode ser executado sem problemas!

Para exibir uma lista de todas as propriedades ou métodos que estão disponíveis para o objeto worksheet, nós podemos digitar um “ponto” ( .) após digitar o nome do objeto.

vba erro 438 propriedades

 

Isto invoca o recurso Intellisense do Editor VBA. Para garantir que o Intellisense está ativo, vá até o menu Ferramentas > Opções e deixe marcada a opção “Autolistar membros” e clique OK.

vba erro 438 autolistar membros

NOTA: Esta opção fica marcada por padrão.

Você também pode encontrar uma lista de todas as Propriedades, Métodos e Eventos para um Objeto do Excel no Pesquisador de Objeto.

No Menu, selecione Exibir > Pesquisador de Objeto ou pressione F2 (Veja mais Atalhos do VBE).

 

vba erro 438 pesquisador objeto

 

Uma lista de classes e objetos irá aparecer no lado esquerdo da tela. Se você clicar no objeto que deseja utilizar (por exemplo: Workbook), uma lista de todas as Propriedades, Métodos e Eventos que esse objeto suporta aceita irá aparecer no lado direito da tela. (exemplo: Membros de Workbook).

 

vba erro 438 pesquisador objeto membros

 

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