Quebra de linha no VBA - Underline
Um assunto que costuma gerar muitas dúvidas, apesar de ser simples, é o uso do Underline (esse tracinho: _ )
Ele fica fácil quando pensamos nas quebras de linha do nosso português normal. Quando você está escrevendo uma palavra e o espaço da linha acaba, você usa o hífen ( - ) e continua a palavra embaixo, certo?
De forma similar, no VBA, quando a gente está escrevendo uma linha e ela já está muito grande, podemos colocar o Underline e continuar na linha abaixo. Veja o exemplo de uma macro sem e, depois, com Underline.
Com o Underline fica mais fácil de ler, né? Ok, mas ao contrário do português, a gente não pode colocar o Underline no meio de uma palavra, e sim entre uma palavra e outra. E sempre, SEMPRE, tem que haver um espaço antes do Underline. Veja a mesma macro, com mais quebras de linhas, todas válidas.
Public Sub exemploCorreto()
If Range("A1") = "a" Or Range("A1") = "e" Or _
Range("A1") = "i" Or Range _
("A1") = _
"o" Or Range("A1") = "u" _
Then MsgBox _
"O texto em A1 é uma vogal"
End Sub
Também não é possível quebrar a linha no meio de um texto (string), ou seja, entre aspas. Veja agora um exemplo onde TODAS as quebras de linha são INVÁLIDAS.
Public Sub exemploErrado()
If Range("A1") = "a" Or Range("A1") = "e" Or_
Range("A1") = "i" Or Range("A1") = "o" Or Ran _
ge("A1") = "u" Then MsgBox "O texto em A1 é _
uma vogal"
End Sub
A primeira quebra de linha é inválida por que não foi digitado o espaço antes do Underline. A segunda quebra de linha é inválida por que o Underline foi colocado no meio da palavra Range. A última quebra de linha é inválida por que está dentro de um texto.
PS: normalmente, o Underline se escreve apertando Shift + hífen