Módulos de classe Excel VBA
Quando usamos o VBA, usamos as propriedades e atributos definidos no VBA, mas o que acontece quando queremos criar nossas próprias propriedades, métodos e atributos, é quando usamos um módulo de classe em VBA para que possamos defini-lo pelo usuário, um módulo de classe tem seu próprio conjunto de códigos definidos para funções, propriedades e objetos pelo usuário.
Módulos de classe são usados para criar um objeto. Quando dizemos itens, embora seja uma variável, esses são pequenos programas. Ao escrever o código, geralmente escrevemos em módulos. Módulos essenciais são onde escrevemos nossos princípios para fazer o trabalho. Também usamos o formulário do usuário para criar interfaces gráficas do usuário.

Mas se você olhar para a imagem acima, verá “Módulo de aula”. Tenho certeza de que você não tocou nisso até ler este post. Você deve estar se perguntando o que é esse módulo de classe VBA quando todo o trabalho pode ser feito usando nosso próprio módulo regular.
O que é o módulo de classe?
Módulos de classe permitem que um usuário crie seu objeto da mesma forma que temos itens embutidos em módulos padrão, como “Planilhas”, “Pastas de trabalho”, “Intervalo” e assim por diante.
Assim, usando um módulo de classe, podemos criar objetos personalizados.
A classe tem uma relação direta com os objetos. Por exemplo, você tem um diagrama de máquina para construir uma máquina, mas lembre-se de que ainda não é uma máquina e, usando este diagrama de máquina, podemos fazer muitas máquinas assim.
Por exemplo, se você deseja listar várias marcas de máquina para listar as características de vários modelos.
Na máquina, temos uma marca, número de série, potência da máquina, cor do dispositivo, número de motores envolvidos, tipo de combustível do motor, etc. … Em linguagem técnica, são chamados de “propriedades”.
Quanto às propriedades da máquina, podemos dar a partida, podemos desligar, podemos aumentar a velocidade do motor, podemos fazer uma pausa, etc … E estes são chamados de “Métodos”.
Exemplo
Vamos começar a rolar porque é sempre chato ler a parte teórica. Para inserir um módulo de classe, vá para a opção inserir em um editor visual básico.

Agora podemos ver um módulo de classe como o abaixo.

Isso é semelhante ao que temos acima como um módulo regular. Altere o nome do módulo de classe na janela de propriedades. Para ver a janela de propriedades, pressione a tecla F4 .

Agora declare a variável como uma string.

Sem criar um subprocedimento em VBA, precisamos declarar a variável e usar a palavra "Público" e não "Dim".
Agora podemos acessar essa variável em qualquer módulo e módulo de classe.
Agora vá para um módulo regular e nomeie a variável.

Depois de declarar a variável, precisamos atribuir o tipo de dados em VBA; em vez de definir o tipo de dados, podemos fornecer o nome do módulo de classe, ou seja, CM.

Usando a variável “k”, podemos acessar a variável pública que definimos no módulo de classe, ou seja, “Meu valor”.

Como podemos ver na imagem acima, está mostrando a opção de nome da variável do módulo de classe para atribuir o valor a ela.

Agora mostre o valor da variável atribuída na caixa de mensagem do VBA.
Código:
Sub Class_Example () Dim k As New CM k.MyValue = "Olá" MsgBox k.MyValue End Sub

Execute este código usando a tecla F5 ou manualmente para mostrar o resultado.

Módulo de classe vs. objetos
No estágio inicial do módulo de classe, todos se confundem com o que é classe e o que é um objeto.
Para entender isso, relembre nosso exemplo anterior de um diagrama de máquina. A primeira coisa que precisamos para produzir uma máquina é projetar a máquina primeiro e, em seguida, várias cópias podem ser replicadas com esse design.
Agora relacione isso ao nosso módulo de aula.
- Aqui, o Módulo de Classe é um Projeto. E Object é a cópia criada pelo Design.
- Mais uma coisa interessante é que precisamos usar a palavra “novo” para criar um objeto do módulo de classe.
Abaixo está um exemplo do mesmo.

Mais uma coisa, quando usamos objetos integrados como planilhas, pastas de trabalho e objetos de intervalo, não usamos a palavra “novo”.
Para iniciar os procedimentos com o Módulo de Aula, essas coisas básicas você deve saber. Nos próximos artigos, veremos os exemplos do próximo nível.
Parece difícil entender isso; quanto mais tempo você gasta com um módulo de aula, você se acostuma.