VBA com

Com declaração no Excel VBA

A instrução With é usada no VBA para acessar todas as propriedades e métodos de um objeto mencionado. Precisamos fornecer a qual objeto VBA estamos nos referindo primeiro, em seguida, feche a instrução With com End With , então, dentro desta instrução, podemos realizar todas as alterações de propriedade e métodos do objeto mencionado.

Abaixo está a sintaxe da instrução With no VBA.

 Com [OBJETO] [Código ... O que precisa ser feito?] Fim com 

O objeto nada mais é do que um intervalo de células ou células às quais nos referimos e, então, podemos alterar as propriedades e executar todos os métodos associados a essa célula ou células específicas.

Como usar com declaração no Excel VBA?

Abaixo estão alguns exemplos para usar com declaração no Excel VBA.

Você pode baixar este modelo VBA com Excel aqui - VBA com modelo Excel

Exemplo 1

Suponha que você tenha determinado valor na célula A1, inseri o texto como “Excel VBA” na célula A1.

Agora, para esta célula, preciso fazer algumas tarefas, ou seja, formatar no excel.

Desejo alterar o tamanho da fonte, o nome da fonte e a cor do interior, inserir uma borda, etc ... O que fazemos normalmente é consultar primeiro a célula usando o objeto VBA RANGE.

Código:

 Sub With_Example1 () Range ("A1") End Sub 

Agora, para alterar o tamanho da fonte, acessamos a propriedade “fonte” desta célula.

Na propriedade FONT, acessamos a propriedade Size e inserimos o tamanho colocando um sinal de igual.

Código:

 Sub With_Example1 () Range ("A1"). Font.Size = 15 End Sub 

Agora, da mesma forma, fazemos outras tarefas de formatação, conforme mostrado abaixo.

Código:

 Sub With_Example1 () Range ("A1"). Font.Size = 15 Range ("A1"). Font.Name = "Verdana" Range ("A1"). Interior.Color = vbYellow Range ("A1"). Borders .LineStyle = xlContinuous End Sub 

Isso fará todas as tarefas mencionadas, mas se você olhar para o código para realizar cada atividade de formatação que fornecemos o endereço da célula todas as vezes, isso fará com que o código pareça longo e demorado.

Agora usaremos a instrução VBA With para reduzir a entrada do endereço da célula todas as vezes. Abra a instrução WITH no Excel VBA e forneça o endereço da célula.

Código:

 Sub With_Example1 () With Range ("A1") End Sub 

Dentro da instrução With, coloque um ponto para ver todas as propriedades e métodos da célula A1.

Agora, a primeira atividade de formatação é alterar o tamanho da fonte, então acesse FONT e sob esta propriedade de acesso SIZE.

Código:

 Sub With_Example1 () With Range ("A1") .Font.Size = 15 End Sub 

Da mesma forma, forneça outros códigos de formatação e feche VBA com declaração.

Código:

 Sub With_Example1 () With Range ("A1") .Font.Size = 15 .Font.Name = "Verdana" .Interior.Color = vbYellow .Borders.LineStyle = xlContinuous End With End Sub 

Execute o código para ver toda a formatação no objeto mencionado, ou seja, célula A1.

Portanto, toda a formatação aplicada à célula. Olha como essa técnica é legal.

Exemplo # 2

Por exemplo, se você deseja alterar todas as propriedades relacionadas à fonte, você pode mencionar a célula e a propriedade FONT.

Código:

 Sub With_Example2 () With Range ("A1"). Font End With End Sub 

Dentro da instrução vba With, podemos ver a lista do IntelliSense que mostrará propriedades e métodos relacionados apenas à propriedade FONT.

Podemos realizar qualquer conjunto de atividades com isso agora.

Código:

 Sub With_Example2 () With Range ("A1"). Font .Bold = True 'A fonte será Bold .Color = vbAlias' A cor da fonte será Alias ​​.Italic = True 'A fonte será em itálico .Size = 20' O tamanho da fonte será ser 20 .Underline = True 'A fonte será sublinhada End With End Sub 

O resultado disso será mostrado abaixo.

Exemplo # 3

O código abaixo acessará apenas propriedades relacionadas à borda da célula.

Código:

 Sub With_Example3 () With Range ("B2"). Borders .Color = vbRed 'A cor da borda será vermelha .LineStyle = xlContinuous' Borda completa .Weight = xlThick 'Borda espessa End With End Sub 

O resultado deste código é o seguinte.

Coisas para lembrar

  • A instrução With é usada para minimizar o código.
  • Precisamos fornecer o objeto primeiro para a instrução With.
  • Uma vez que o objeto específico é fornecido, podemos acessar apenas as propriedades e métodos desse objeto.