以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]单元格如何追加新字符  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=44871)

--  作者:zyys2813
--  发布时间:2014/1/10 17:06:00
--  [求助]单元格如何追加新字符

这里是其中一段代码,判断一下"备注"列是否有内容,如有则在不删除原内容的基础上再加上新的内容,中间用 ; 隔开


For Each dr As Row In Tables("退回_出库副表").GetCheckedRows

    Dim thxl As Integer = e.Form.Controls("退回数量").value

    Dr("出库数量") = dr("出库数量") - thxl

    If dr("备注") = "" Then

        dr("备注") = e.Form.Controls("退回日期").value & "退回 " & e.Form.Controls("退回数量").value

    Else

      dr("备注") =    这里怎么写,不删掉原有的内容,再追加 上面一行 的内容

    End If

Next


--  作者:Bin
--  发布时间:2014/1/10 17:11:00
--  

dim rlist as list(of row) = Tables("退回_出库副表").GetCheckedRows

For i as integer=0 to  rlist.count-1

    dim dr as Row =rlist(i) 

    Dim thxl As Integer = e.Form.Controls("退回数量").value

    Dr("出库数量") = dr("出库数量") - thxl

    If dr("备注") = "" Then

        dr("备注") = e.Form.Controls("退回日期").value & "退回 " & e.Form.Controls("退回数量").value

    Else

      dr("备注") =  dr("备注") & IIF(i>1,rlist(i-1)("备注"),"")   这里怎么写,不删掉原有的内容,再追加 上面一行 的内容

    End If

Next


--  作者:zyys2813
--  发布时间:2014/1/10 17:18:00
--  
"i"是"pvivate",因此它在上下文中不可访问
--  作者:Bin
--  发布时间:2014/1/10 17:19:00
--  
不会出现这样的错误,你检查一下你的代码 是否和我的一样
.

--  作者:zyys2813
--  发布时间:2014/1/10 17:23:00
--  
对不起,编译过了
但运行出现错误:
图片点击可在新窗口打开查看此主题相关图片如下:捕获.png
图片点击可在新窗口打开查看

--  作者:Bin
--  发布时间:2014/1/10 17:25:00
--  
也不可能出现这样的错误. 另外这里应该改为
dr("备注") =  dr("备注") & IIF(i>=1,rlist(i-1)("备注"),"") 

不行你就上例子,我看下你那里搞错了

--  作者:zyys2813
--  发布时间:2014/1/10 17:34:00
--  
Bin 老师,我的表设置的是 只能 复选一行,不会出现多行,是不是和这个有关系 
--  作者:Bin
--  发布时间:2014/1/10 17:36:00
--  
只复选一行I就不会大于1 就不会执行I-1 也就没有的出错.如果你只能选一行,你还遍历所有行干嘛呀.

你直接上例子吧.

--  作者:zyys2813
--  发布时间:2014/1/10 17:39:00
--  
不用遍历的
因为没基础,抄的代码

--  作者:zyys2813
--  发布时间:2014/1/10 17:52:00
--  

[此贴子已经被作者于2014-1-10 21:53:49编辑过]