以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  excel报表中如何定义变量  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=144118)

--  作者:zyxhx
--  发布时间:2019/12/11 11:28:00
--  excel报表中如何定义变量
老师您好,在EXCEL报表中有时候代码过长,看上去很复杂,稍微不注意就会出错,能不能在设计报表时定义变量以缩短代码长度。
以下代码虽然能够实现,但显得过长:

<"补偿镇(中心)名称:三渡镇合医办  " & "                                 " & "补偿时间:" & iif(int(day([@合医异地住院补偿申报表,登记日期])) < 16, format([@合医异地住院补偿申报表,登记日期], "yyyy年M月") & "1日—" & format([@合医异地住院补偿申报表,登记日期], "yyyy年M月") & "15日",iif(int(month([@合医异地住院补偿申报表,登记日期])) = 2, format([@合医异地住院补偿申报表,登记日期], "yyyy年M月") & "16日—" & format([@合医异地住院补偿申报表,登记日期], "yyyy年M月") & "28日", iif(int(month([@合医异地住院补偿申报表,登记日期])) = 1 or int(month([@合医异地住院补偿申报表,登记日期])) = 3 or int(month([@合医异地住院补偿申报表,登记日期])) = 5 or int(month([@合医异地住院补偿申报表,登记日期])) = 7 or int(month([@合医异地住院补偿申报表,登记日期])) = 8 or int(month([@合医异地住院补偿申报表,登记日期])) = 10 or int(month([@合医异地住院补偿申报表,登记日期])) = 12,format([@合医异地住院补偿申报表,登记日期], "yyyy年M月") & "16日—" & format([@合医异地住院补偿申报表,登记日期], "yyyy年M月") & "31日",format([@合医异地住院补偿申报表,登记日期], "yyyy年M月") & "16日—" & format([@合医异地住院补偿申报表,登记日期], "yyyy年M月") & "30日")))  & "                                 " & " 报表时间:" & format(date,"yyyy年M月d日")>

请老师指点,如何定义变量。

--  作者:有点蓝
--  发布时间:2019/12/11 11:58:00
--  
事件代码计算,然后结果放到全局变量里,模板绑定全局变量:http://www.foxtable.com/webhelp/topics/1391.htm

或者在报表事件中处理:http://www.foxtable.com/webhelp/topics/1955.htm

--  作者:zyxhx
--  发布时间:2019/12/11 22:01:00
--  
谢谢老师!