本文转自http://www.softwelt.com/Know/KnowDetail-2236860.html

ToText 和 CStr 是等价函数。

重载 
ToText (x) 
ToText (x, y) 
ToText (x, y, z) 
ToText (x, y, z, w) 
ToText (x, y, z, w, q) 
参数 
转换. . . 说明 
布尔值 
x 是转换为字符串的布尔值,可以是“True”或“False”。

数字和货币值 
x 是一个数字或货币值,将转换成文本字符串。它可以是一个整数或分数。 
y 是一个整数,表示将 x 中的值进位到的小数位数(这个参数是可选的)。 
z 是一个单字符文本字符串,表示用来隔开 x 的千分位字符。默认设置为在“国际”或“区域设置”控制面板中指定的字符。(此参数是可选的。) 
w 是一个单字符文本字符串,表示在 x 中用作小数位分隔符的字符。默认设置为在“国际”或“区域设置”控制面板中指定的字符。(此参数是可选的。)

数字和货币值(格式化) 
x 是一个数字或货币值,将转换成文本字符串。它可以是一个整数或分数。 
y 是一个文本字符串,用于表示显示 x 中值的格式。有关创建格式字符串的信息,参见格式字符串。 
z 是一个整数,表示将 x 中的值进位到的小数位数。(此参数是可选的。) 
w 是一个单字符文本字符串,表示用来分隔 x 的千分位字符。默认设置为在“国际”或“区域设置”控制面板中指定的字符。(此参数是可选的。) 
q 是一个单字符文本字符串,表示在 x 中用作小数位分隔符的字符。默认设置为在“国际”或“区域设置”控制面板中指定的字符。(此参数是可选的。)

日期值 
x 为一个日期值,将转换成文本字符串。 
y 是一个文本字符串,用来定义 x 中的值是如何格式化的。有关创建这种格式字符串的更多信息,请参阅日期、时间和日期时间值的格式字符串。(此参数是可选的。)

时间值 
x 是一个时间值,将转换成一个文本字符串。 
y 是一个文本字符串,用来定义 x 中的值是如何格式化的。有关创建这种格式字符串的更多信息,请参阅日期、时间和日期时间值的格式字符串。(此参数是可选的。) 
z 是一个文本字符串,用来作为 A.M.(上午)时间的标记。(此参数是可选的。) 
w 是一个文本字符串,用来作为 P.M.(下午)时间的标记。(此参数是可选的。)

日期时间值 
x 是一个日期时间值,将转换成一个文本字符串。 
y 是一个字符文本字符串,用来表明将如何格式化结果文本字符串。有关创建格式字符串的详细信息,参见日期、时间和日期时间值的格式字符串。(此参数是可选的。) 
z 是一个文本字符串,用来作为 A.M.(上午)时间的标记。(此参数是可选的。) 
w 是一个文本字符串,用来作为 P.M.(下午)时间的标记。(此参数是可选的。)

返回 
文本字符串

操作 
ToText 函数将数字、货币、日期、时间和日期时间值转换成文本字符串。

典型用法 
使用该函数将数字、货币、日期、时间或日期时间值转换成一个将显示为报表中的文本(套用信函、注释等)的文本字符串。

文本字符串参考网站:https://msdn.microsoft.com/zh-cn/library/0c899ak8(v=vs.110).aspx

示例 
下列示例适用于 Basic 语法和 Crystal 语法:

ToText({订单.已发货})

返回 True,其中 ({订单.已发货}) 中的值是 True。

ToText(123.45)

返回“123.45”。

ToText(12345.6749,2)

返回“12345.67”。

ToText(12345.6750,2)

返回“12345.68”。

ToText(12345.4999.0)

返回“12345”。

ToText(12345.5000.0)

返回“12346”。

ToText({file.AMT} * {file.QUANTITY})

返回 44,890.20,其中 Amt = 24.45,Quantity = 1836。

当希望通过将转换后的数字或其他值与别的文本字符串进行组合(连接)来生成一个句子时,ToText 非常有用:

"The base price of item # " + {file.ITEM NUMBER} + " is $" + ToText({file.BASE PRICE}) + "."

打印句子“The base price of item A1/4520/B12 is $50.00.”,其中 Item number 为 A1/4520/B12,Base Price 为 50.00,后者被转换成文本并使用两位小数进行格式化。

下列示例适用于 Crystal 语法:

ToText(CDate(1996, 11, 1), "yy MMM dd, dddd")

返回 96 Nov 01, Monday(1996 年 11 月 1 日)。

ToText(DateTime(1995,10,12,3,30,11),"HH:mm, yy MMMM ddd")

返回 03:30, 95 October Thu。

ToText(Time(12, 10, 10), "HH*mm*ss tt", "amStr", "pmStr")

返回 12*10*10 pmStr。

注释 
ToText 的重载只带一个参数,它与 Visual Basic 的同名函数用法类似。

转换布尔值:

ToText 函数在与布尔值一起用来组合(连接)布尔值和其他文本时非常有用。不过,只更改“格式编辑器”中布尔值选项卡上的格式就可以将布尔值字段的格式设置为在报表中显示 True 或 False。 
转换数字和货币值:

如果已经指定了小数位数,该函数在转换成文本时并不截断该数,而是将该数四舍五入到指定的小数位数。有关四舍五入过程的详细信息,参见 Round (x), Round (x, #places)。 
转换日期、时间和日期时间值:

任何字符(日期或时间格式字符除外)都可以在格式字符串中使用。例如,您可能想用斜杠符号来分隔不同的日期元素(年、月、日),如“12/30/95”,也可能想用冒号来分隔不同的时间元素(时、分、秒),如“12:30:10”。 
如果想在格式字符串中使用上述字符中的任意一种,则这些字符必须用引号引起来。例如:ToText(CDateTime(1995,10,12,13,20,22), "MM/dd/yy hh 'h' mm 'min' ss 'sec' tt", 'am', 'pm') = &quo

05-11 15:05