docno;txtype;txmsg
S328924;1;3152||||0|||2|0.00|796.00||0.00|676.00|700.00|24.00|CH|1|1|
S328924;2;3152|||||0147000008|||A03760|014700|070000||2|0.00|0|0|0|0|0||||120.00||||||||||||||||0.00|676.00|
S328924;4;3152|CH|0|700.00|700.00|||||
S328925;1;3152||03205275||0|||2|0.00|1210.00||0.00|1210.00|1300.00|90.00|CH|2|1|
S328925;2;3152||03205275|||0136000007|||A56210|013600|136100||1|0.00|0|0|0|0|0||||0.00||||||||||||||||0.00|40.00|
S328925;2;3152||03205275|||0136000007|||A56210|013600|136100||1|0.00|0|0|0|0|0||||0.00||||||||||||||||0.00|1170.00|
S328925;4;3152|CH|0|1300.00|1300.00|||||
数据是分有三个字段组成的,docno(票据号),txtype(类型),txmsg(明细项目),一张票据由三行数据构成,由类型来区别,1是售价,付款明细,2是售卖明细,4,最终付款数,但在类型1和2的时候,如果是vip的话,还记录着vip卡的卡号,请问各位大下,我如何写个自定义函数,可以分别把我需要的内容拆分出来,就是把那个|分隔的内容拆出来,记录到数组里面,困难在于,类型2里,有的有vip卡号,有的没有,所以小弟不知道给如何写,跪求大下们辅导一下
S328924;1;3152||||0|||2|0.00|796.00||0.00|676.00|700.00|24.00|CH|1|1|
S328924;2;3152|||||0147000008|||A03760|014700|070000||2|0.00|0|0|0|0|0||||120.00||||||||||||||||0.00|676.00|
S328924;4;3152|CH|0|700.00|700.00|||||
S328925;1;3152||03205275||0|||2|0.00|1210.00||0.00|1210.00|1300.00|90.00|CH|2|1|
S328925;2;3152||03205275|||0136000007|||A56210|013600|136100||1|0.00|0|0|0|0|0||||0.00||||||||||||||||0.00|40.00|
S328925;2;3152||03205275|||0136000007|||A56210|013600|136100||1|0.00|0|0|0|0|0||||0.00||||||||||||||||0.00|1170.00|
S328925;4;3152|CH|0|1300.00|1300.00|||||
数据是分有三个字段组成的,docno(票据号),txtype(类型),txmsg(明细项目),一张票据由三行数据构成,由类型来区别,1是售价,付款明细,2是售卖明细,4,最终付款数,但在类型1和2的时候,如果是vip的话,还记录着vip卡的卡号,请问各位大下,我如何写个自定义函数,可以分别把我需要的内容拆分出来,就是把那个|分隔的内容拆出来,记录到数组里面,困难在于,类型2里,有的有vip卡号,有的没有,所以小弟不知道给如何写,跪求大下们辅导一下
解决方案 »
- 入来睇睇拉~~关于数学函数的。。
- 关于连接sql server的问题
- 如何控制窗体上的光标不让移动
- 两个问题50′(VB控制EXCEL)
- vb本身的问题?
- VB中,与下位机进行通讯时,程序运行大概一个小时后,出现没有为命令对象设置命令?
- 急急急!!高分求:如何快速学习VB.NET,VB6.0,C#
- 请问datagrid导出到excel的程序能否显示字段名对应的标题名?
- 大家帮帮我,现在急需,使用ADO方式打开加有口令的ACCESS数据库有问题,应该怎么办? 大家帮忙UP一下,UP有分。
- 哪位知道VB中怎样使一个窗体全屏,满屏显示?不用WindowState=Maximized?
- 偶不懂VB~谁能给我这道题的代码啊~谢谢了~在线等~~急(我看这个题好象很简单啊)
- http://www.bewww.com
定义一个数组 DIM AAA
AAA=split(string,"|")
比如:
Dim Str as String
Str="kuhh||9879873||lifjasff|||98793......"
Str=Replace(Str,"||","}")再把替换好的字符串用Split函数分解成一段一段的字符串数组
比如:
Dim A() as String
A()=Split(Str,"|") 第三步,还是用Split把每一段字符串以“;”分割成不同的字段看你写的数据很乱,不知道实际上是否有这么多“|”
应该更有规律的吧,楼主先找到规律,再用上面说的办法自己试试吧,不难的。
如果是的话,你可以通过类型1的数据行来判断相应的类型2数据行中有没有卡号
如:S328924;1;3152||||0|||2|0.00|796.00||0.00|676.00|700.00|24.00|CH|1|1|
3152后面那个分割符中为空||||就没有卡号
而S328925;1;3152||03205275||0|||2|0.00|1210.00||0.00|1210.00|1300.00|90.00|CH|2|1|
3125后面是:||03205275|| 说明是用卡的,它的类型2的数据行中就有卡号
(1)“票据号”和VIP卡号在书写上有什么差别?
(2)“|”怎么隔开的?
楼主请作答!