Application.FormatResultEx 方法 (Visio)
根据格式图片,使用指定的缩放和格式单位将字符串或数字的格式设置为字符串。 或者,对日期或时间字符串设置字符串的语言类型和日历类型。
语法
表达式。FormatResultEx (StringOrNumber、 UnitsIn、 UnitsOut、 Format、 LangID、 CalendarID)
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))"
当 UnitsIn 为 visDate 时,可以将数值以 StringOrNumber 的形式传递给 DATETIME 函数。 传递的值的整数部分应表示自 1899 年 12 月 30 日以来的天数,小数部分应表示自午夜以来一天的分数。 例如,38135.50 表示 2004 年 5 月 28 日中午。
UnitsIn 和 UnitsOut 参数可以是字符串,如“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。
当 UnitsIn 为 visDate 时, 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 支持和反馈,获取有关如何接收支持和提供反馈的指南。