以文本方式查看主题

-  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=877)

--  作者:ahljy351
--  发布时间:2008/10/15 7:43:00
--  如何在EXCEL中设置金额大写?
{"    ㈠、委托房产于认证基准日按同地段普通商品住房计算认证价格(大写):"&CUMoney([商品房价格])}

CUMONEY不能被识别?

--  作者:smileboy
--  发布时间:2008/10/15 7:48:00
--  
&前后应该有空格。应该是不支持这个函数
[此贴子已经被作者于2008-10-15 8:04:56编辑过]

--  作者:ahljy351
--  发布时间:2008/10/15 8:30:00
--  
晕怎么办?在这卡住了!有什么变通的办法吗?如增加一个列,直接将它变成金额大写后再引用?可是我在表属性中设置了某一列内容变化后执行事件不行啊!

if e.datacol.name="商品房单价" then
    e.datarow("商大写")=CUMoney("商品房价格")
    e.datarow("差大写")=CUMoney("认证差价")
end if
[此贴子已经被作者于2008-10-15 8:30:55编辑过]

--  作者:ahljy351
--  发布时间:2008/10/15 8:52:00
--  
另外日期转中文大写也不行,可否提供相应函数?如   :二○○八年十二月二十日
--  作者:狐狸爸爸
--  发布时间:2008/10/15 9:00:00
--  
excel的格式设置非常丰富,应该再设计模板的时候,设置好单元格格式,而不是利用数据引用来实现。
--  作者:ahljy351
--  发布时间:2008/10/15 9:43:00
--  
㈠、委托房产于认证基准日按同地段普通商品住房计算认证价格(大写):"&CUMoney([商品房价格])

:号前的文字是固定的,但大写金额不是固定的,且要紧跟:号后面,还要加上(¥0.000)这样的标记,在单元格中如何实现。建议增加以上两个函数。
[此贴子已经被作者于2008-10-15 9:43:52编辑过]

--  作者:狐狸爸爸
--  发布时间:2008/10/15 10:02:00
--  
如果这样的话,先将转换后的大写金额保存在一个全局变量中,然后:

{"委托房产于认证基准日按同地段普通商品住房计算认证价格(大写):" & [!全局变量]}

--  作者:ahljy351
--  发布时间:2008/10/15 10:16:00
--  

    Vars.Add("商大写",GetType(string),CUMoney("商品房价格"))
    Vars.Add("差大写",GetType(string),CUMoney("认证差价"))

这样写对吗?

然后:
{"    ㈠、委托房产于认证基准日按同地段普通商品住房计算认证价格(大写):"&[!商大写]}

是吗?

--  作者:狐狸爸爸
--  发布时间:2008/10/15 10:21:00
--  
你完全乱套了,强烈建议你重新复习两次帮助!

在afteropenproject事件中增加两个变量:
   Vars.Add("商大写",GetType(string))
    Vars.Add("差大写",GetType(string))

自己一个打印报表的按钮:

Vars("商大写")= CUMoney(CurrentTable.Current("商品房价格"))
Vars("差大写")= CUMoney(CurrentTable.Current("认证差价"))

Dim Book As New XLS.Book(ProjectPath & "Attachments\\文件名.xls") \'打开模板
Dim
Sheet As XLS.Sheet = Book.Sheets(0)
Book.Build() \'生成细节区
Book.Save(
"c:\\reports\\test.xls") \'保存工作簿
Dim
Proc As New Process \'打开工作簿
Proc.File =
"c:\\reports\\test.xls"
Proc.Start()

[此贴子已经被作者于2008-10-15 10:21:30编辑过]

--  作者:狐狸爸爸
--  发布时间:2008/10/15 10:28:00
--  
可以不用全局变量,直接在build之后,向单元格写入内容:

....
Book.Build()
Sheet(行号,列号) = "委托房产于认证基准日按同地段普通商品住房计算认证价格(大写):" & CUMoney(CurrentTable.Current("商品房价格"))
....
[此贴子已经被作者于2008-10-15 10:31:06编辑过]