Foxtable(狐表)用户栏目专家坐堂 → [求助]多行文本框取值,经转换生成新数据赋值到表


  共有1743人关注过本帖树形打印复制链接

主题:[求助]多行文本框取值,经转换生成新数据赋值到表

帅哥哟,离线,有人找我吗?
13865161910
  1楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:396 积分:3297 威望:0 精华:0 注册:2014/12/13 14:35:00
[求助]多行文本框取值,经转换生成新数据赋值到表  发帖心情 Post By:2017/8/14 9:51:00 [只看该作者]

 如何在多行文本框取值,经对照表的内容进行转换生成新数据赋值到表中对应列?

 

 

 


图片点击可在新窗口打开查看此主题相关图片如下:求助01.jpg
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:求助02.jpg
图片点击可在新窗口打开查看

 

逻辑大概有,只是不知道需要哪些知识点或者说是代码的方法。代码转换的方法已经知道,就是对取值赋值这块还比较模糊

望大神不吝赐教,万分感谢!


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By: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
  3楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:396 积分:3297 威望:0 精华:0 注册:2014/12/13 14:35:00
回复:(有点甜)参考代码 Dim str As Strin...  发帖心情 Post By:2017/8/14 10:07: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


第一个行“Dim str As String = "aaa" & vbcrlf & "bbb" & vbcrlf & "ccc"”   定义srt的变量,aaa/bbb/ccc
但是我这边是从多行文本框取值,这块不知道该如何定义?多行文本的内容是从EXCEL表直接复制粘贴过来,所以每个号码都是单独一行显示在文本框中


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/8/14 10:09:00 [只看该作者]

Dim str As String = e.form.controls("TextBox1").Text

 回到顶部
帅哥哟,离线,有人找我吗?
13865161910
  5楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:396 积分:3297 威望:0 精华:0 注册:2014/12/13 14:35:00
回复:(有点甜)Dim str As String = e.form.control...  发帖心情 Post By:2017/8/14 14:24:00 [只看该作者]

 已经搞定,谢谢

如果我想将新表(表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编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By: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

 回到顶部