VBA – Formatar Células

Written by

Editorial Team

Reviewed by

Steve Rynearson

Translated by

Daniel Caramello

Last updated on May 23, 2023

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

FormulaHidden (Fórmula Oculta)

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:wrap text

o código abaixo retornará Null na janela ‘Verificação Imediata’:

?Worksheets("Planilha1").Range("A1:B1").WrapText
vba-free-addin

Exemplos de Add-ins de Códigos VBA

Acesse facilmente todos os exemplos de código que se encontram em nosso site.

Simply navigate to the menu, click, and the code will be inserted directly into your module. .xlam add-in.

(Nenhuma instalação necessária!)

Baixe de Graça

Retornar aos Exemplos de Códigos VBA