如何在SSRS报表中格式化日期?生成指定格式的当前日期
在SSRS中生成指定格式日期的表达式
要生成「20th day of June 2024」这种格式的日期,你可以使用以下完整表达式,它会自动处理日期的序数词(st/nd/rd/th)、月份全称和年份:
=Str(Day(Now())) & IIF(Day(Now()) = 1 Or Day(Now()) = 21 Or Day(Now()) = 31, "st", IIF(Day(Now()) = 2 Or Day(Now()) = 22, "nd", IIF(Day(Now()) = 3 Or Day(Now()) = 23, "rd", "th"))) & " day of " & Format(Now(), "MMMM") & " " & Str(Year(Now()))
关于你之前的错误说明
单独使用=Day或=Month会报错,因为这些函数必须传入日期参数(比如Day(Now()))才能返回对应的值,直接写函数名而不带参数不符合SSRS表达式的语法要求。
表达式拆解
Day(Now()):获取当前日期的日部分(如20)- 嵌套的
IIF语句:根据日数判断并添加对应的序数词后缀 Format(Now(), "MMMM"):返回月份的全称(如June)Year(Now()):获取当前年份(如2024)
如果只需要日期不需要时间,把Now()换成Today()即可。
内容的提问来源于stack exchange,提问作者DThomas221
相关产品推荐
相关产品推荐

