O que a palavra-chave 'Novo' faz no VBA?
Nos procedimentos do VBA, estamos sempre atendendo à palavra-chaveNovo geralmente na instanciação de uma referência de objeto a uma instância de objeto existente. Mas, em algumas instâncias, usamos a palavra-chave Novo, enquanto em outras não, por exemplo:
Dim T As Excel.Workbook
Set T = Application.Workbooks(Bk)
No exemplo superior No.1, o"Novo" palavra-chave temnão sido usado
Dim fso As FileSystemObject
Set fso = New FileSystemObject
No exemplo superior No.2, oNovo palavra chaveé sendo usado
Porquê isso? Tenha em mente que estou fresco do barco no VBA, mas farei o possível para entender!
Além disso, também fico confuso quando é usado / não usado na declaração de uma referência de objeto, por exemplo:
Dim WS As Worksheet
No exemplo superior No.1, o"Novo" palavra-chave temnão sido usado
Dim myClassModule As New cl_ChartEvents
No exemplo superior No.2, oNovo palavra chaveé sendo usado
A Ajuda da Microsoft não me diz nada ...
Palavra-chave que permite a criação implícita de um objeto. Se você usar Novo ao declarar a variável do objeto, uma nova instância do objeto será criada na primeira referência a ele, para que você não precise usar a instrução Set para atribuir a referência ao objeto.
Gratz2u
Queridas pessoas, apenas uma última poeira para uma compreensão profunda
Dim WS as Worksheet
Set WS = Worksheets("Sheet1")
Bem aqui, estamos criando um objeto que já existia para abrir o MS Excel (digamos, por exemplo, no "modo padrão"), é claro, que é a Plan1.Uma vez que existe e oNew
palavra-chave está fora de questão, como podemos instanciar esse objeto em uma linha imediatamente?
4 @exantas
Desculpe diz que não é representante suficiente para postar foto :-(