以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 粘贴一列多个数据的问题 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=160497) |
-- 作者:wangglby -- 发布时间:2021/2/4 16:03:00 -- 粘贴一列多个数据的问题 在表的 DATACOLCHANGED 事件中加入了一些代码,这些代码 包含 currenttable.position, 都与当前行有关,当我把数据一格一格粘贴到表上时,正常, 若是同时粘贴1列中的多格数据,事件执行只按第一行的currenttable.position执行,导致后面几行的代码执行不正确,请问这个如何解决。 |
-- 作者:有点蓝 -- 发布时间:2021/2/4 16:11:00 -- 贴出完整代码说明 |
-- 作者:wangglby -- 发布时间:2021/2/4 16:21:00 -- If e.DataCol.Name = "物料信息_物料编码" Then
If Tables("表A").current("物料信息_级别") = 1 Then
e.DataRow("物料信息_层级") = e.DataRow("物料信息_物料编码")
End If
End If
If e.DataCol.Name = "物料信息_物料编码" Then
If Tables("表A").current("物料信息_级别") = 2
Dim A As Integer = CurrentTable.Position
Dim t As Table = Tables("表A")
Dim C As Integer = t.Rows(A)("物料信息_级别")
Dim D As Integer = 0
Do While C > 1
If C = 2 Then
D = D+1
End If
A=A-1
C = t.Rows(A)("物料信息_级别")
Loop
e.DataRow("物料信息_层级") = t.Rows(A)("物料信息_物料编码") & "." & D
End If
End If
表的列有 物料信息_级别, 物料信息_层级, 物料信息_物料编码
如果我把第一行,第二行,第三行的 “物料信息_级别"列数字分别输入为 1,2, 2 ,再在“物料信息_物料编码”列中粘贴3个编码,这时,“物料信息_层级“只按 If Tables("表A").current("物料信息_级别") = 1 ”执行。
|
-- 作者:有点蓝 -- 发布时间:2021/2/4 16:32:00 -- 没看懂的第二段代码要做什么,这种表事件请直接使用e.DataRow,而不是current,currenttable这种东西 If e.DataCol.Name = "物料信息_物料编码" Then If e.DataRow("物料信息_级别") = 1 Then e.DataRow("物料信息_层级") = e.DataRow("物料信息_物料编码") End If End If 具体请上传实例说明 |
-- 作者:wangglby -- 发布时间:2021/2/4 16:45:00 -- 以下是引用有点蓝在2021/2/4 16:32:00的发言:
没看懂的第二段代码要做什么,这种表事件请直接使用e.DataRow,而不是current,currenttable这种东西 If e.DataCol.Name = "物料信息_物料编码" Then
If e.DataRow("物料信息_级别") = 1 Then
e.DataRow("物料信息_层级") = e.DataRow("物料信息_物料编码")
End If
End If
具体请上传实例说明 简单说下,
就是 物料信息_级别为 1时,执行事件代码1,物料信息_级别为2时,执行事件代码2,
该2个代码都与当前行有关。
但我若是同时粘贴多个数据 到物料信息_物料编码列,软件只按当前行对应的 "物料信息_级别" 上的数字执行,
比如如下: 物料信息_级别 物料信息_层级 物料信息_物料编码 1 77125453 77125453 2 77125454 77125454 2 77125455 77125455
物料信息_物料编码 列的数字若是1个个粘贴或是手工输入,执行代码后结果如下,这是正确的运行结果
物料信息_级别 物料信息_层级 物料信息_物料编码 1 77125453 77125453 2 77125453.1 77125454 2 77125453.2 77125455
[此贴子已经被作者于2021/2/4 16:46:59编辑过]
|
-- 作者:有点蓝 -- 发布时间:2021/2/4 17:20:00 -- 使用文字说明一下事件代码2的逻辑和计算规则 |