Em scripts que criam objetos automaticamente, é importante verificar se estes objetos já não foram previamente criados, a fim de evitar objetos duplicados ou até mesmo erros de script.
Não há nenhum método específico que faça esta verificação diretamente; uma possibilidade é buscar o objeto através do método Item.
Set testObj = folder.Item("TagDemo1")
Dois resultados diferentes podem ocorrer:
- Se houver um erro de script nesta linha, é porque o objeto não existe.
- Se não houver um erro de script, é porque o objeto existe.
Então, basta fazer um tratamento neste erro de script, para poder utilizar esta informação e prosseguir com o desenvolvimento do código. Exemplo:
'aponto o local desejado
set folder = Application.GetObject("Dados")
on error resume next
'procuro o objeto desejado
set testObj = folder.Item("TagDemo5")
'se ocorreu um erro de script
If Err.Number <> 0 then
MsgBox "O objeto não existe!"
'se não ocorreu erro de script
Else
MsgBox "O objeto existe!"
End If
on error goto 0
Como esta verificação pode se repetir em diversos pontos do script, é interessante criar uma Function específica para isto, a fim de deixar o script mais enxuto e organizado.
Antes de prosseguir para a próxima lição, recomendamos a leitura dos seguintes artigos:
Tratamento de erros de script.
KB-30665: Trabalhando com funções em scripts no E3.
Artigos Relacionados:
- Automação na geração de códigos: Introdução.
- Automação na geração de códigos: Lição 1 – Trabalhando com vetores.
- Automação na geração de códigos: Lição 2 – Lendo informações de um arquivo Excel.
- Automação na geração de códigos: Lição 3 – Transformando uma string em um vetor.
- Automação na geração de códigos: Lição 4 – Varrendo objetos específicos em um local.
- Automação na geração de códigos: Lição 5 – Adicionando objetos por script.
- Automação na geração de códigos: Lição 7 – Eventos para execução do script.