Foxtable(狐表)用户栏目专家坐堂 → 将指定的行、列单元格内容按顺序合并到一个单元格


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

主题:将指定的行、列单元格内容按顺序合并到一个单元格

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


加好友 发短信
等级:四尾狐 帖子:932 积分:6531 威望:0 精华:0 注册:2014/6/25 10:48:00
将指定的行、列单元格内容按顺序合并到一个单元格  发帖心情 Post By:2023/8/31 12:47:00 [显示全部帖子]

老师,我需要将指定行和对应列单元格的数值合并到另一个数据表的一个单元格里,比将表A的1-9行对应的F列+G列的值,按F1+G1、F2+G2...的顺序合并到表B的某一个单元格,请问代码该怎么写呢,麻烦老师指点,或者直接贴出来,感激不尽。。。。。

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


加好友 发短信
等级:四尾狐 帖子:932 积分:6531 威望:0 精华:0 注册:2014/6/25 10:48:00
  发帖心情 Post By:2023/8/31 14:35:00 [显示全部帖子]

谢谢老师
需要进一步,比如表A有一列为“合并标志”列,其内容有“甲、乙、丙、丁”,其中内容为甲的共有9行,内容为丙的有15行,表B也有一列为“合并标志”列,现在要将表A“合并标志”列内容为甲的共9行的值合并到表B“合并标志”列内容为甲的S列。

 回到顶部
帅哥哟,离线,有人找我吗?
爱相随
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:932 积分:6531 威望:0 精华:0 注册:2014/6/25 10:48:00
  发帖心情 Post By:2023/8/31 14:50:00 [显示全部帖子]

符合条件的行会的,就是合并的代码
If e.DataCol.Name = "项目辅助" Then '发生变化的是产品编号吗?
    '在产品表找出该产品
    Dim dr As DataRow 
    Dim s As String
    dr = DataTables("工具表").Find("项目辅助 = '" & e.DataRow("项目辅助") & "'" )
    If dr IsNot Nothing '如果找到, 则设置各列内容
    For i As integger
    s = s & Tables("工具表").rows(i)("f") & Tables("a").rows(i)("g")
Next


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


加好友 发短信
等级:四尾狐 帖子:932 积分:6531 威望:0 精华:0 注册:2014/6/25 10:48:00
  发帖心情 Post By:2023/9/1 10:26:00 [显示全部帖子]

老师,麻烦再看看下面代码该怎么修改呢?谢谢!
Dim drs As List(Of DataRow)
drs = DataTables("工具表").Select([合并标志] = dr("项目辅助"))
Dim s As String
For Each dr As DataRow In drs
   s = s &  dr("放款时间") 
Next

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


加好友 发短信
等级:四尾狐 帖子:932 积分:6531 威望:0 精华:0 注册:2014/6/25 10:48:00
  发帖心情 Post By:2023/9/1 10:27:00 [显示全部帖子]

提示未声明[合并标志]

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


加好友 发短信
等级:四尾狐 帖子:932 积分:6531 威望:0 精华:0 注册:2014/6/25 10:48:00
  发帖心情 Post By:2023/9/1 11:00:00 [显示全部帖子]

不会改啊,麻烦老师直接修改一下呗,非常感谢谢

 回到顶部
帅哥哟,离线,有人找我吗?
爱相随
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:932 积分:6531 威望:0 精华:0 注册:2014/6/25 10:48:00
  发帖心情 Post By:2023/9/1 11:02:00 [显示全部帖子]

Dim drs As List(Of DataRow)
Dim s As String
drs = DataTables("工具表").Select("[合并标志] = '" & drs("项目辅助") & "'")
For Each dr As DataRow In drs
   s = s &  dr("放款时间") 
Next

改成这样,说是“没有类型 String和DataRow 定义运算符  &  ”

 回到顶部
帅哥哟,离线,有人找我吗?
爱相随
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:932 积分:6531 威望:0 精华:0 注册:2014/6/25 10:48:00
  发帖心情 Post By:2023/9/1 11:52:00 [显示全部帖子]

嗯,谢谢老师,但结果不如预期,并没把要合并的值合并过来,不知道是哪里有问题。。。

 回到顶部
帅哥哟,离线,有人找我吗?
爱相随
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:932 积分:6531 威望:0 精华:0 注册:2014/6/25 10:48:00
  发帖心情 Post By:2023/9/1 12:08:00 [显示全部帖子]

代码的意思是:工具表有“合并标志”和“放款时间列”,然后本表也有“合并标志”和“放款时间列”,想通过代码将工具表中“合并标志列”内容与本表“合并标志”列一样的所有行“放款时间”列的值(多行或多个单元格)合并到本表的“放款时间”列(一行的一个单元格)
Dim drs As List(Of DataRow)
Dim s As String
drs = DataTables("工具表").Select("[合并标志] = '" & e.DataRow("合并标志") & "'")
For Each dr As DataRow In drs
   s = s & dr("放款时间") 
Next
[此贴子已经被作者于2023/9/1 13:07:03编辑过]

 回到顶部