以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 数据的分列 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=23641) |
||||
-- 作者:jackchen -- 发布时间:2012/9/15 9:42:00 -- 数据的分列 请问下 我现在需要像EXCEL一样,把一个长的数据串分成几个数据,比如 公司_部门_业务员_客户_工厂名 ,要切分成几列,公司一列,部门一列..... 我用excel的分列功能,只要设置"_"是分隔符,就可以很容易得到这些,但是我想知道在foxtable中如何实现?? |
||||
-- 作者:lin_hailun -- 发布时间:2012/9/15 9:47:00 -- 狐表暂时没有这种功能!需要自己编码完成...... |
||||
-- 作者:jackchen -- 发布时间:2012/9/15 10:15:00 -- 谢谢,我知道是要编程,但是这个表达式怎么写, |
||||
-- 作者:lin_hailun -- 发布时间:2012/9/15 10:40:00 -- 感觉用比价麻烦,还是做了个小例子。
[此贴子已经被作者于2012-9-15 10:41:51编辑过]
|
||||
-- 作者:jackchen -- 发布时间:2012/9/15 11:55:00 -- 多谢,但是好复杂啊, 看了蛮久,你是用一个数组来计算,但是我现在是想在输入数据的时候,用 DataColChanged 这个参数,直接运算出来,所以不用针对一个数组,只要对一个字符串计算就好了, 从每行的字符串中得到对应的值,并且也不需要创建新的行,数据表中已经创建好的,只要运算后填充就可以了,请帮忙再看看
|
||||
-- 作者:lin_hailun -- 发布时间:2012/9/15 14:21:00 -- 哦哦,原来是这样。希望在一列里输入,然后自动填充到各列。 If e.DataCol.Name = "拆分列" Then Dim val As String = e.DataRow(e.DataCol.Name) Dim ary() As String = val.Split("_") Dim count As Integer = 1 If count > ary.Length Then Return End If e.DataRow("列1") = ary(0) count = count + 1 If count > ary.Length Then Return End If e.DataRow("列2") = ary(1) count = count + 1 \'以此类推 End If |
||||
-- 作者:jackchen -- 发布时间:2012/9/15 22:32:00 -- 实在感谢,解决大问题了 |