Vba 格式化字段以在SSR中添加破折号
我正在从数据库中提取一串数字,并希望在它们之间设置破折号格式。更具体地说,我希望他们从看起来像 这:Vba 格式化字段以在SSR中添加破折号,vba,reporting-services,ssrs-2008,Vba,Reporting Services,Ssrs 2008,我正在从数据库中提取一串数字,并希望在它们之间设置破折号格式。更具体地说,我希望他们从看起来像 这: 1234567890 为此: 12345-67-890 我试图通过占位符属性更改格式,但不起作用。我想可能是因为它是一根绳子 我的代码如下所示: Format(Fields!NUM.Value, "#####-##-###") 当我运行它时,我得到了返回 您可以使用表达式将此格式应用于数字。您可以直接在报表中使用此表达式,也可以将其作为计算字段添加到数据集(如果它将在多个位置被引用) =Lef
1234567890
为此:
12345-67-890 我试图通过占位符属性更改格式,但不起作用。我想可能是因为它是一根绳子 我的代码如下所示:
Format(Fields!NUM.Value, "#####-##-###")
当我运行它时,我得到了返回 您可以使用表达式将此格式应用于数字。您可以直接在报表中使用此表达式,也可以将其作为计算字段添加到数据集(如果它将在多个位置被引用)
=Left(Fields!NUM.Value, 5) + "-" + Mid(Fields!NUM.Value, 6, 2) + "-" + Right(Fields!NUM.Value, 3)
谢谢我以前确实使用过这个表达式,但是使用了
参数代码>。有点傻,不是因为我没想过在字段中尝试它代码>。这是一个非常可行的解决方案。另一个解决方案是使用特定的方法将值转换为数字。例如:格式(CInt(Fields!NUM.Value),“#####-##-###”)
。大多数情况下,如果有人带着长度可变的数字字符串出现,left、mid、right
将不起作用,则发布此消息。