Compartilhar via


Método Application.FormatResultEx (Visio)

Formata uma sequência de caracteres ou número em uma sequência de caracteres de acordo com uma imagem de formatação, usando unidades especificadas para colocação em escala e formatação. Opcionalmente, para sequências de caracteres de data ou hora, define o idioma e tipo de calendário da sequência de caracteres.

Sintaxe

expressão. FormatResultEx (StringOrNumber, UnitsIn, UnitsOut, Format, LangID, CalendarID)

expressão Uma variável que representa um Aplicativo objeto.

Parâmetros

Nome Obrigatório/Opcional Tipo de dados Descrição
StringOrNumber Obrigatório Variant Sequência de caracteres ou número a ser formatado; pode ser passado como uma sequência de caracteres, número com ponto flutuante ou número inteiro.
UnidadesIn Obrigatório Variant Unidades de medida para atribuir a StringOrNumber.
UnitsOut Obrigatório Variant Unidades de medida para expressar o resultado.
Format Obrigatório String Imagem da aparência que a sequência de caracteres resultante deve ter.
LangID Opcional Long O idioma a ser usado para a sequência de caracteres resultante.
CalendarID Opcional Long O calendário a ser usado para a sequência de caracteres resultante. O valor padrão é o calendário ocidental, visCalWestern.

Valor de retorno

Cadeia de caracteres

Comentários

Se passado como uma sequência de caracteres, StringOrNumber deve ser a fórmula ou fórmula prospectiva de uma célula, ou o resultado ou resultado prospectivo de uma célula expresso como uma sequência de caracteres. O método FormatResultEx avalia a sequência de caracteres e formata o resultado. Como a sequência de caracteres está sendo avaliada fora do contexto de ser a fórmula de uma determinada célula, o método FormatResultEx retornará um erro se a sequência de caracteres contiver qualquer referência a células.

Os valores possíveis de StringOrNumber incluem:

  • 1.7
  • 3
  • "2.5"
  • "4,1 cm"
  • "12 pés - 17 pol + (12 cm / SQRT(7))"

Quando UnitsIn for visDate, você poderá passar um valor numérico para a função DATETIME em StringOrNumber. A parte inteira do valor que transmite deve representar o número de dias desde 30 de dezembro de 1899 e a parte decimal deve representar a fração de um dia desde a meia-noite. Por exemplo, 38135,50 representa o meio-dia de 28 de maio de 2004.

Os argumentos UnitsIn e UnitsOut podem ser sequências de caracteres como "polegadas", "polegada", "pol." ou "p". As sequências de caracteres podem ser usadas para todas as unidades do Microsoft Visio com suporte, como centímetros, metros, milhas e assim por diante. Também pode utilizar qualquer uma das constantes de unidade declaradas pela biblioteca de tipos do Visio no VisUnitCodes. Também está incluída uma lista de unidades válidas em Acerca das unidades de medida.

Se StringOrNumber for uma sequência de caracteres, UnitsIn especificará como interpretar o resultado avaliado e será usado apenas se o resultado for escalar. Por exemplo, a expressão "4 * 5 cm" avalia como 20 cm, o que não é escalar, pelo que UnitsIn é ignorada. A expressão "4 * 5" avalia como 20, que é escalar e é interpretada com a UnitsIn especificada.

O argumento UnitsOut especifica as unidades nas quais a sequência de caracteres retornada deve ser expressa. Se desejar que os resultados sejam expressos nas mesmas unidades que a expressão avaliada, passe "NOCAST" ou visNoCast.

Format é uma sequência de caracteres que especifica um modelo ou imagem da sequência de caracteres produzida pelo método FormatResultEx. Para obter detalhes, consulte a função FORMAT. Algumas possibilidades são:

  • # - Produza um único dígito, mas não se for um 0 à esquerda ou à direita.

  • 0 - Produza um único dígito, mesmo que seja um 0 à esquerda ou à direita.

  • . - Marcador de posição decimal.

  • , - Separador de milhares.

  • "text" ou 'text' - Texto incluído de saída tal como está.

  • \c - Produza o caráter c.

Quando UnitsIn é visDate, o Formato deve ser um dos formatos de data/hora de formulário expandidos do Microsoft Visio personalizados, que são do formulário "{{formato de data/hora picture}}". Pode ver estes formatos na caixa Formato Personalizado na caixa de diálogo Formato de Dados no Visio (selecione uma forma e, em seguida, no separador Inserir, selecione Campo. Na lista Categoria, selecione Data/Hora e, em seguida, selecione Formato de Dados).

O argumento LangID é opcional. Se você não especificar um valor, o Visio utilizará o idioma atual do sistema. Se transmitir um valor, o argumento LangID deve ser um dos IDs padrão utilizados pelo Windows para codificar versões de idioma diferentes. Por exemplo, 1033 é a identificação de idioma de Inglês (Estados Unidos). Para ver uma lista de IDs de idioma possíveis, veja Constantes e Cadeias do Identificador de Idioma.

O argumento CalendarID deve ser um dos seguintes valores, que são declarados no VisCellVals na biblioteca de tipos do Visio. O valor padrão é o calendário ocidental, visCalWestern.

Constant Valor Descrição
visCalWestern 0 Oeste
visCalArabicHijri 1 Islâmico árabe
visCalHebrewLunar 2 Lunar hebraico
visCalChineseTaiwan 3 Calendário de Taiwan
visCalJapaneseEmperor 4 Reinado do imperador japonês
visCalThaiBuddhism 5 Budista tailandês
visCalKoreanDanki 6 Danki coreano
visCalSakaEra 7 Era Saka
visCalTranslitEnglish 8 Transliteração inglesa
visCalTranslitFrench 9 Transliteração francesa

Exemplo

O exemplo seguinte mostra como utilizar a propriedade FormatResultEx para formatar uma data em grego e apresentá-la como texto da forma.

Public Sub FormatResultEx_Example 
 
 Dim vsoShape As Visio.Shape 
 Dim strDate As String 
 
 Set vsoShape = ActivePage.DrawOval (3, 5, 5, 9) 
 strDate = Application.FormatResultEx (37663.50, visDate, "", "{{dd MMMM yyyy}}", 1032, 0) 
 
 vsoShape.Text = strDate 
 
End Sub

Suporte e comentários

Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.