Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
A nova palavra-chave só pode ser aplicada a um objeto creatível (uma instância de uma classe ou objeto de Automatização). Esse erro tem as seguintes causas e soluções:
Tentou instanciar algo que só pode ter uma instância. Por exemplo, tentou criar uma nova instância de um módulo ao especificar
Module1numa instrução como a seguinte:Dim MyMod As New Module1Não pode criar a nova instância, uma vez que um módulo só pode ter uma instância.
Tentou instanciar um objeto de Automatização, mas não era um objeto criável. Por exemplo, tentou criar uma nova instância de uma caixa de listagem ao especificar a Caixa de Listagem numa instrução semelhante à seguinte:
' Valid syntax to create the variable. Dim MyListBox As ListBox Dim MyFormInst As Form ' Invalid syntax to instantiate the object. Set MyFormInst = New Form Set MyListBox = New ListBox
ListBox e Formulário são nomes de classes e não nomes de objetos específicos. Utilize-as para especificar que uma variável será uma referência a um determinado tipo de objeto, tal como acontece com as instruções Dim válidas acima. No entanto, não pode utilizá-los para instanciar os próprios objetos numa instrução Set . Tem de especificar um objeto específico, em vez do nome genérico da classe, na instrução Set :
' Valid syntax to create new instance of a form or list box.
Set MyFormInst = New Form1
Set MyListBox = New List1
Saiba mais selecionando o item em questão e pressionando F1 (no Windows) ou HELP (no Macintosh).
Suporte e comentários
Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.