Função Format

Aplica-se a
Access para Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Retorna uma Variante (Cadeia) que contém uma expressão formatada de acordo com as instruções contidas em uma expressão de formato.

Advertência Existe um problema com a utilização desta função. A última segunda-feira em alguns anos civis pode ser devolvida como semana 53, quando deveria ser semana 1. Para obter mais informações e uma solução alternativa, consulte As funções Formatar ou PartData podem devolver o número de semana errado da última segunda-feira do ano.

Ver alguns exemplos

Sintaxe

Formatar( *expressão [, formato ] [, primeirodiadasemana ] [, primeirasemanadoano ] )

A sintaxe da função Formatar tem os seguintes argumentos:

Argumento Descrição
expressão Obrigatória. Qualquer expressão válida.
Formato Opcional. Uma expressão de formato com nome válido ou definida pelo utilizador.
primeirodiadasemana Opcional. Uma constante que especifica o primeiro dia da semana.
primeirasemanadoano Opcional. Uma constante que especifica a primeira semana do ano.

    

Configurações

O argumento de formato pode utilizar uma variedade de definições, dependendo do tipo de dados do argumento de expressão . Consulte os artigos indicados na seguinte tabela para obter mais informações sobre expressões de formato válidas.

Para expressões que usam esse tipo de dados... Consulte o artigo
Qualquer tipo Propriedade Format
Data/hora Formatar um campo de data e hora
Numérico Formatar um campo numérico ou monetário
Texto e memorando Formatar um campo de texto
Sim/Não Propriedade Format - tipo de dados sim/não

    

O argumento primeirodiadasemana tem as seguintes definições:

Constante Valor Descrição
vbUseSystem 0 Utilizar a definição NLS API.
VbSunday 1 Domingo (predefinição)
vbMonday 2 Segunda-feira
vbTuesday 3 Terça-feira
vbWednesday 4 Quarta-feira
vbThursday 5 Quinta-feira
vbFriday 6 Sexta-feira
vbSábado 7 Sábado

    

O argumento da primeira semanadoano tem as seguintes definições:

Constante Valor Descrição
vbUseSystem 0 Utilizar a definição NLS API.
vbFirstJan1 1 Começar com a semana de 1 de Janeiro (predefinição).
vbFirstFourDays 2 Começar com a primeira semana que tenha, pelo menos, quatro dias no ano.
vbFirstFullWeek 3 Começar com a primeira semana completa do ano.

    

Comentários

Para Formatar Faça o seguinte
Números Utilize formatos numéricos com nomes predefinidos ou crie formatos numéricos definidos pelo utilizador.
Datas e horas Utilize formatos de data/hora com nomes predefinidos ou crie formatos de data/hora definidos pelo utilizador.
Números de série de data e hora Utilize formatos de data e hora ou formatos numéricos.
Cordas Crie os seus próprios formatos de cadeia definidos pelo utilizador.

    

Se tentar formatar um número sem especificar o formato, a função Formatar fornece funcionalidades semelhantes à função Cad , apesar de ter opções internacionais. No entanto, os números positivos formatados como cadeias com a opção Formato não incluem um espaço à esquerda reservado para o sinal do valor; aqueles convertidos usando Str mantêm o espaço principal.

Se estiver a formatar uma cadeia numérica não localizada, deve utilizar um formato numérico definido pelo utilizador para garantir que obtém o aspeto pretendido.

Observação

Se a definição da propriedade Calendar for Gregoriano e o formato especificar a formatação de data, a expressão fornecida tem de ser Gregoriana. Se a configuração da propriedade Visual Basic Calendar for islâmico, a expressão fornecida deverá ser islâmico.

Se o calendário for gregoriano, o significado dos símbolos de expressão de formato permanecerá inalterado. Se o calendário for islâmico, todos os símbolos de formato de data (por exemplo, dddd, mmmm, aaaa) terão o mesmo significado, mas se aplicarão ao calendário islâmico. Os símbolos de formato permanecem em inglês; símbolos que resultam em exibição de texto (por exemplo, AM e PM) exibem a cadeia de caracteres (inglês ou árabe) associada a esse símbolo. O alcance de certos símbolos muda quando o calendário é islâmico.

Símbolo Variação
d 1-30
dd 1-30
ss 1-51
mmm Exibe nomes completos dos meses (os nomes dos meses islâmicos não têm abreviações).
nte misturada, 1-355
aaaa 100-9666

Exemplos

Usar a função Formatar em uma expressão Você pode usar Formatar sempre que puder usar expressões. Por exemplo, você pode usá-la em uma consulta como parte de um alias de campo ou na propriedade Fonte do Controle de uma caixa de texto em um formulário ou relatório. Os exemplos a seguir mostram uma expressão que você pode usar na propriedade Filter de um relatório para limitar a saída aos registros da semana anterior.

Format([Date],"ww")=Format(Now(),"ww")-1

Neste exemplo, a fonte de registro do relatório tem um campo chamado Data, que contém a data em que cada registro específico foi modificado e que é usado no relatório. Quando você executa o relatório, seus resultados são filtrados para mostrar apenas os registros em que a semana para o valor no campo Data (Format([Date],"ww")) é igual à semana anterior (Format(Now(),"ww")-1).

Use a função Formatar no código VBA 

Observação

Os exemplos a seguir demonstram o uso dessa função em um módulo do Visual Basic for Applications (VBA). Para obter mais informações sobre como trabalhar com o VBA, selecione Referência do desenvolvedor na lista suspensa ao lado de Pesquisar e insira um ou mais termos na caixa de pesquisa.

Este exemplo mostra vários usos da função Formatar para formatar valores usando formatos nomeados e formatos definidos pelo usuário. Para o separador de data (/), separador de hora (:) e literal AM/PM, a saída formatada real exibida pelo sistema depende das configurações de localidade do computador no qual o código está sendo executado. Quando horas e datas são exibidas no ambiente de desenvolvimento, o formato de hora abreviada e o formato de data abreviada da localidade do código são usados. Quando exibido pela execução do código, o formato de hora abreviada e o formato de data abreviada da localidade do sistema são usados, o que pode ser diferente da localidade do código. Para este exemplo, a localidade em inglês dos EUA é assumida.

MyTime e MyDate são exibidos no ambiente de desenvolvimento usando a configuração de hora abreviada do sistema atual e a configuração de data abreviada.

Dim MyTime, MyDate, MyStr
MyTime = #17:04:23#
MyDate = #January 27, 1993#
' Returns current system time in the system-defined long time format.
MyStr = Format(Time, "Long Time")
' Returns current system date in the system-defined long date format.
MyStr = Format(Date, "Long Date")
MyStr = Format(MyTime, "h:m:s")    ' Returns "17:4:23".
MyStr = Format(MyTime, "hh:mm:ss AMPM")    ' Returns "05:04:23 PM".
MyStr = Format(MyDate, "dddd, mmm d yyyy")    ' Returns "Wednesday,
    ' Jan 27 1993".
' If format is not supplied, a string is returned.
MyStr = Format(23)    ' Returns "23".
' User-defined formats.
MyStr = Format(5459.4, "##,##0.00")    ' Returns "5,459.40".
MyStr = Format(334.9, "###0.00")    ' Returns "334.90".
MyStr = Format(5, "0.00%")    ' Returns "500.00%".
MyStr = Format("HELLO", "<")    ' Returns "hello".
MyStr = Format("This is it", ">")    ' Returns "THIS IS IT".

      

Usar Formato com cadeias de comprimento zero

No Microsoft Access versão 2.0 e anterior, você poderia usar a função Formatar para retornar um valor para uma cadeia de comprimento zero e outro para um valor. Por exemplo, você pode usar uma expressão de formato como a seguinte com a função Format para retornar o valor de cadeia de caracteres apropriado do código:

Dim varX As Variant
Dim varStrX As Variant
' Assign some value to varStrX and pass to Format function.
varX = Format(varStrX, "@;ZLS;Null")

No Microsoft Access versões 97 e posteriores, você deve testar separadamente o caso nulo e, em seguida, retornar o valor apropriado com base no resultado. Por exemplo, você pode usar a função SeImed em uma expressão com a função Formatar , como a seguir:

varX = IIf(IsNull(varStrX),"Null", Format(varStrX, "@;ZLS"))

Essa alteração se aplica somente quando você usa a função Formatar para formatar uma cadeia de caracteres, dependendo se é uma cadeia de comprimento zero ou um valor Nulo. Outras expressões de formato usadas com a função Formatar continuam funcionando como nas versões anteriores.

Se você converter um banco de dados do Microsoft Access versão 2.0 e anterior para o Microsoft Access 2002 ou posterior, deverá alterar o código para testar separadamente o caso Nulo.

As funções de cadeia de caracteres e como usá-las