以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  excel导出-单元格格式  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=94242)

--  作者:ming8604
--  发布时间:2016/12/19 18:07:00
--  excel导出-单元格格式
用excel模板导出的。
某列单元格,长度是七个数字。如果输入不够位数,前面补零。
我在excel那设置了自定义单元格式,但是导出的时候,没有转换。
求帮助,谢谢。

--  作者:有点色
--  发布时间:2016/12/19 18:14:00
--  

改成这样的公式

 

<mid("0000000",1,7-len([第二列])) & [第二列]>


--  作者:ming8604
--  发布时间:2016/12/21 8:55:00
--  
用excel模板导出的。
我在excel那设置了自定义单元格式,数值格式,小数位数0.
该列的表达式
<Format([startdate],"1yyMMdd")> 
但是输出格式,不对。
还是要在导出文件里修改,以文本形式储存的数字。


--  作者:有点色
--  发布时间:2016/12/21 9:06:00
--  

 你在模板里面设置的格式,foxtable导出de时候,是会覆盖掉的,你设置了无效。

 

 如果要得到想要的数据,你只能用vbscript公式。

 

 如果确实想设置格式,必须在生成excel以后,打开excel,设置 http://www.foxtable.com/webhelp/scr/1160.htm

 


--  作者:ming8604
--  发布时间:2016/12/21 10:32:00
--  
不对啊。。我在修改其他格式,在excel模板里设置了。导出都没问题,就这有问题。所以,应该可以修改模板格式就才对啊。

用vbscript公式?是怎么写呢?
图片点击可在新窗口打开查看

--  作者:有点色
--  发布时间:2016/12/21 11:13:00
--  

 参考

 

http://www.foxtable.com/webhelp/scr/1388.htm

 


--  作者:ming8604
--  发布时间:2016/12/21 14:01:00
--  
我有用vbscript公式,
<Format([startdate],"1yyMMdd")> 
就是出现了我所问的问题,没有转变成数字。
请教。

--  作者:有点色
--  发布时间:2016/12/21 14:24:00
--  

 你可以用设置成文本类型的啊,为什么一定要设置成数字?做实例发上来。

 

 那你加上转换成数字的函数 <Cint(Format([startdate],"1yyMMdd"))> 


--  作者:ming8604
--  发布时间:2016/12/21 17:15:00
--  
财务要求导出的数据是要1YYMMDD格式,而且还是数字型的。
<Cint(Format([startdate],"1yyMMdd"))> 
设置成这样之后,导出就变成空白了,应该是导出失败了。是不是format格式出错导致?

--  作者:有点色
--  发布时间:2016/12/21 17:23:00
--  

 哦,要改成这样

 

<cdbl(Format([startdate],"1yyMMdd"))>