Application.FormatResultEx 方法 (Visio)

根据格式图片,使用指定的缩放和格式单位将字符串或数字的格式设置为字符串。 或者,对日期或时间字符串设置字符串的语言类型和日历类型。

语法

表达式FormatResultEx (StringOrNumberUnitsInUnitsOutFormatLangIDCalendarID)

expression:表示 Application 对象的变量。

参数

名称 必需/可选 数据类型 说明
StringOrNumber 必需 Variant 要设置格式的字符串或数字;可以作为字符串、浮点数或整数来传递。
UnitsIn 必需 Variant StringOrNumber 的度量单位。
UnitsOut 必需 Variant 表示结果使用的度量单位。
Format 必需 字符串 结果字符串的实际外观的图片。
LangID 可选 Long 结果字符串要使用的语言。
CalendarID 可选 Long 结果字符串要使用的日历。 默认值为公历 visCalWestern

返回值

String

备注

如果以字符串形式传递,StringOrNumber 可能是单元格的公式或预期公式,或者是以字符串形式表示的单元格的结果或预期结果。 FormatResultEx 方法对字符串进行计算并设置结果的格式。 由于字符串是在特定单元格公式的上下文之外计算的,因此,如果字符串包含任意单元格引用,FormatResultEx 方法将返回错误。

StringOrNumber 的可能值包括:

  • 1.7
  • 3
  • "2.5"
  • "4.1 cm"
  • "12 ft - 17 in + (12 cm / SQRT(7))"

UnitsInvisDate 时,可以将数值以 StringOrNumber 的形式传递给 DATETIME 函数。 传递的值的整数部分应表示自 1899 年 12 月 30 日以来的天数,小数部分应表示自午夜以来一天的分数。 例如,38135.50 表示 2004 年 5 月 28 日中午。

UnitsInUnitsOut 参数可以是字符串,如“inches”、“inch”、“in.”或“i”。 字符串可以用于所有受支持的 Microsoft Visio 单位,如厘米、米、英里等。 还可以使用 VisUnitCodes 中 Visio 类型库声明的任何单元常量。 关于度量单位中也包含有效单位的列表。

如果 StringOrNumber 是字符串,则 UnitsIn 指定如何解释计算结果,而且只有在结果为标量时才使用它。 例如,表达式 "4 * 5 cm" 的计算结果为 20 cm,这不是标量,因此 将忽略 UnitsIn 。 表达式 "4 * 5" 的计算结果为 20,这是一个标量,使用指定的 UnitsIn 进行解释。

UnitsOut 参数指定返回的字符串应该以哪种单位表示。 如果希望结果与计算的表达式使用相同的单位来表示,则传递“NOCAST”或 visNoCast

Format 是指定由 FormatResultEx 方法产生的字符串的模板或图片的字符串。 有关详细信息,请参阅 FORMAT 函数。 一些可能的选项为:

  • # - 输出个位数,但如果它是前导或尾随 0,则不输出。

  • 0 - 输出个位数,即使它是前导或尾随 0。

  • . - 小数占位符。

  • , - 千位分隔符。

  • "text"'text' - 按原样输出封闭文本。

  • \c - 输出字符 c。

UnitsInvisDate 时, Format 应为自定义 Microsoft Visio 扩展格式日期/时间格式之一,格式为“{{date/time format picture}}”。 可以在 Visio 的“数据格式”对话框中的“自定义格式”框中查看这些格式, (选择形状,然后在“插入”选项卡上选择“字段”。在“类别”列表中,选择“日期/时间”,然后选择“数据格式”) 。

LangID 参数是可选的。 如果没有指定值,Visio 将使用当前系统语言。 如果传递值, LangID 参数应是 Windows 用于对不同语言版本进行编码的标准 ID 之一。 例如,1033 是英语(美国)的语言 ID。 若要查看可能的语言 ID 的列表,请参阅 语言标识符常量和字符串

CalendarID 参数应为以下值之一,这些值在 Visio 类型库中的 VisCellVals 中声明。 默认值为公历 visCalWestern

常量 Description
visCalWestern 0 西方
visCalArabicHijri 1 阿拉伯回历
visCalHebrewLunar 2 希伯来农历
visCalChineseTaiwan 3 台历
visCalJapaneseEmperor 4 日本年号
visCalThaiBuddhism 5 泰国佛历
visCalKoreanDanki 6 朝鲜檀纪历
visCalSakaEra 7 萨卡人日历
visCalTranslitEnglish 8 英语转译
visCalTranslitFrench 9 法语转译

示例

以下示例演示如何使用 FormatResultEx 属性设置希腊文日期的格式,并将其显示为形状文本。

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

支持和反馈

有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。