以文本方式查看主题
- Foxtable(狐表) (http://foxtable.net/bbs/index.asp)
-- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2)
---- [求助]多行文本框取值,经转换生成新数据赋值到表 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=105199)
|
-- 作者:13865161910
-- 发布时间:2017/8/14 9:51:00
-- [求助]多行文本框取值,经转换生成新数据赋值到表
如何在多行文本框取值,经对照表的内容进行转换生成新数据赋值到表中对应列?
此主题相关图片如下:求助01.jpg
此主题相关图片如下:求助02.jpg
逻辑大概有,只是不知道需要哪些知识点或者说是代码的方法。代码转换的方法已经知道,就是对取值赋值这块还比较模糊
望大神不吝赐教,万分感谢!
|
-- 作者:有点甜
-- 发布时间:2017/8/14 9:59:00
--
参考代码
Dim str As String = "aaa" & vbcrlf & "bbb" & vbcrlf & "ccc" Dim dt1 As DataTable = DataTables("表A") Dim dt2 As DataTable = DataTables("表B") For Each s As String In str.replace(chr(10), "").split(chr(13)) Dim ndr As DataRow = dt1.addnew ndr("第一列") = s Dim fdr As DataRow = dt2.Find("第一列 = \'" & s & "\'") If fdr IsNot Nothing Then ndr("第二列") = fdr("第二列") ndr("第三列") = True End If Next
|
-- 作者:13865161910
-- 发布时间:2017/8/14 10:07:00
-- 回复:(有点甜)参考代码 Dim str As Strin...
参考代码
Dim str As String = "aaa" & vbcrlf & "bbb" & vbcrlf & "ccc" Dim dt1 As DataTable = DataTables("表A") Dim dt2 As DataTable = DataTables("表B") For Each s As String In str.replace(chr(10), "").split(chr(13)) Dim ndr As DataRow = dt1.addnew ndr("第一列") = s Dim fdr As DataRow = dt2.Find("第一列 = \'" & s & "\'") If fdr IsNot Nothing Then ndr("第二列") = fdr("第二列") ndr("第三列") = True End If Next
第一个行“Dim str As String = "aaa" & vbcrlf & "bbb" & vbcrlf & "ccc"” 定义srt的变量,aaa/bbb/ccc 但是我这边是从多行文本框取值,这块不知道该如何定义?多行文本的内容是从EXCEL表直接复制粘贴过来,所以每个号码都是单独一行显示在文本框中
|
-- 作者:有点甜
-- 发布时间:2017/8/14 10:09:00
--
Dim str As String = e.form.controls("TextBox1").Text
|
-- 作者:13865161910
-- 发布时间:2017/8/14 14:24:00
-- 回复:(有点甜)Dim str As String = e.form.control...
已经搞定,谢谢
如果我想将新表(表B)中产生的第二列的数据再在表C中通过的某个相同列的值进行遍历查找,然后赋值到表B,是在NEXT下写代码还是? 是先定义表中B新生成的列的值为一个srting 然后用each for 遍历,然后find,还是如何操作? 如何定义转换后的数据这一列,然后通过这一列的值在表C中查询获得某一行数据 填充到表B?(表B中转换后编码在表C中有一列与其相符,只是需要获得表C中后面某几个列的值赋值到表B对应列中,在这里面有新增了几列,为了最后导出EXCEL模版做准备的)
表B
此主题相关图片如下:求助03.jpg
表C
此主题相关图片如下:求助04.jpg
[此贴子已经被作者于2017/8/14 14:34:24编辑过]
|
-- 作者:有点甜
-- 发布时间:2017/8/14 14:46:00
--
Dim str As String = "aaa" & vbcrlf & "bbb" & vbcrlf & "ccc" Dim dt1 As DataTable = DataTables("表A") Dim dt2 As DataTable = DataTables("表B") For Each s As String In str.replace(chr(10), "").split(chr(13)) Dim ndr As DataRow = dt1.addnew ndr("第一列") = s Dim fdr As DataRow = dt2.Find("第一列 = \'" & s & "\'") If fdr IsNot Nothing Then ndr("第二列") = fdr("第二列") ndr("第三列") = True Dim ffdr As DataRow = DataTables("表C").find("第二列 = \'" & fdr("第二列") & "\'") If ffdr IsNot Nothing Then ndr("第四列") = ffdr("第四列") ndr("第五列") = ffdr("第五列") End If End If Next
|