VBA – Formatar Células
In this Article
- Formatação de células
- AddIndent (Adicionar Recuo)
- Bordas
- Fonte
- FormulaHidden (Fórmula Oculta)
- HorizontalAlignment (Alinhamento Horizontal)
- IndentLevel (Nível do Recuo)
- Interior
- Locked (Bloqueado)
- MergeCells (Mesclar Células)
- NumberFormat (Formato do Número)
- NumberFormatLocal (Formato do Número Regional)
- Orientation (Orientação)
- Parent (Pai)
- ShrinkToFit (Reduzir para Caber)
- VerticalAlignment (Alinhamento Vertical)
- WrapText (Quebrar Texto)
Este tutorial demonstrará como formatar células usando o VBA.
Formatação de células
Há muitas propriedades de formatação que podem ser definidas para um (intervalo de) células como esta:
Sub DefinirFormatacaoCelula()
With Worksheets("Planilha1").Range("B5:C7")
.HorizontalAlignment = xlHAlignDistributed
.AddIndent = True
.Font.FontStyle = "Italic"
.NumberFormat = "General"
.Interior.Color = RGB(128, 100, 250)
End With
End Sub
Vamos vê-las em ordem alfabética:
AddIndent (Adicionar Recuo)
Ao definir o valor dessa propriedade como True, o texto será automaticamente recuado quando o alinhamento do texto na célula for definido, horizontal ou verticalmente, como distribuição igual (consulte HorizontalAlignment e VerticalAlignment).
With Worksheets("Planilha1").Range("A1")
.Orientation = xlVertical
.VerticalAlignment = xlVAlignDistributed
.AddIndent = True
End With
Bordas
Você pode definir o formato da borda de uma célula. Consulte aqui para obter mais informações sobre bordas.
Como exemplo, você pode definir uma linha tracejada vermelha ao redor da célula B2 na Planilha 1, da seguinte forma:
Worksheets("Planilha1").Range("B2").BorderAround LineStyle:=xlDash, ColorIndex:=3
Fonte
Você pode ajustar o formato da fonte da célula definindo o nome da fonte, o estilo, o tamanho, a cor, adicionando sublinhados e/ou efeitos (tachado, sub ou sobrescrito). Consulte aqui para obter mais informações sobre fontes de células.
Aqui estão alguns exemplos:
With Range("A1:C5").Font
.Name = "Century"
.FontStyle = "Bold"
.Strikethrough = True
End With
Essa propriedade retorna ou define um valor de variante que indica se a fórmula ficará oculta quando a planilha estiver protegida. Por exemplo:
Worksheets("Planilha1").Range("A1:B1").FormulaHidden = True
HorizontalAlignment (Alinhamento Horizontal)
Essa propriedade de formato de célula retorna ou define um valor de variante que representa o alinhamento horizontal do objeto especificado. As constantes retornadas ou definidas podem ser: xlGeneral, xlCenter, xlDistributed, xlJustify, xlLeft, xlRight, xlFill, xlCenterAcrossSelection. Por exemplo:
Worksheets("Planilha1").Range("D3").HorizontalAlignment = xlRight
IndentLevel (Nível do Recuo)
Retorna ou define um valor inteiro entre 0 e 15 que representa o nível de recuo da célula ou do intervalo.
Worksheets("Planilha1").Range("A1").IndentLevel = 7
Interior
Você pode definir ou obter informações retornadas sobre o interior da célula: sua Color, ColorIndex, Pattern, PatternColor, PatternColorIndex, PatternThemeColor, PatternTintAndShade, ThemeColor, TintAndShade, assim:
If Not Range("A1").Interior.ThemeColor = ThemeColorLight2 Then
Range("A1").Interior.Pattern = xlPatternUp
End If
Locked (Bloqueado)
Essa propriedade retorna True se a célula ou o intervalo estiver bloqueado, False se o objeto puder ser modificado quando a planilha estiver protegida ou Null se o intervalo especificado contiver células bloqueadas e desbloqueadas. Ela também pode ser usada para bloquear ou desbloquear células.
Este exemplo desbloqueia as células A1:B2 na Planilha1 para que elas possam ser modificadas quando a planilha estiver protegida.
Worksheets("Planilha1").Range("A1:B2").Locked = False
Worksheets("Planilha1").Protect
MergeCells (Mesclar Células)
Defina essa propriedade como True se você precisar mesclar um intervalo. Seu valor será True se um intervalo especificado contiver células mescladas. Por exemplo, se você precisar mesclar o intervalo de C5:D7, poderá usar este código:
Worksheets("Planilha1").Range("C5:D7").MergeCells = True
NumberFormat (Formato do Número)
Você pode definir o formato do número dentro da(s) célula(s) como Geral, Número, Moeda, Contábil, Data, Hora, Porcentagem, Fração, Científico, Texto, Especial e Personalizado.
Veja a seguir exemplos de formatos de números científicos e percentuais:
Range("A1").NumberFormat = "0.00E+00"
Range("B1").NumberFormat = "0.00%"
NumberFormatLocal (Formato do Número Regional)
Essa propriedade retorna ou define um valor de variante que representa o código de formato do objeto como uma cadeia de caracteres no idioma do usuário.
Orientation (Orientação)
Você pode definir (ou obter o retorno) a orientação do texto dentro da(s) célula(s) por meio dessa propriedade. Seu valor pode ser uma destas constantes: xlDownward, xlHorizontal, xlUpward, xlVertical ou um valor inteiro de -90 a 90 graus.
Worksheets("Planilha1").Range("A1").Orientation = -60
Parent (Pai)
Essa é uma propriedade somente leitura que retorna o objeto pai de um objeto especificado.
ShrinkToFit (Reduzir para Caber)
Essa propriedade retorna ou define um valor de variante que indica se o texto é automaticamente reduzido para caber na largura da coluna disponível.
Worksheets("Planilha1").Range("A1").ShrinkToFit = True
VerticalAlignment (Alinhamento Vertical)
Essa propriedade de formato de célula retorna ou define um valor de variante que representa o alinhamento vertical do objeto especificado. As constantes retornadas ou definidas podem ser: xlCenter, xlDistributed, xlJustify, xlBottom, xlTop. Por exemplo:
Worksheets("Planilha1").Range("A1").VerticalAlignment = xlTop
WrapText (Quebrar Texto)
Essa propriedade retorna True se o texto estiver quebrado em todas as células dentro do intervalo especificado, False se o texto não estiver quebrado em todas as células dentro do intervalo especificado ou Null se o intervalo especificado contiver algumas células que quebram o texto e outras que não.
Por exemplo, se você tiver esse intervalo de células:
o código abaixo retornará Null na janela ‘Verificação Imediata’:
?Worksheets("Planilha1").Range("A1:B1").WrapText