Foxtable(狐表)用户栏目专家坐堂 → [求助]当前行 框选非日期列填充 已完成


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

主题:[求助]当前行 框选非日期列填充 已完成

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


加好友 发短信
等级:四尾狐 帖子:812 积分:6688 威望:0 精华:0 注册:2014/11/26 12:32:00
[求助]当前行 框选非日期列填充 已完成  发帖心情 Post By:2018/8/15 17:21:00 [只看该作者]

当前行 框选非日期列,框选的多列填充 已完成  按钮的代码怎么写?求帮助


图片点击可在新窗口打开查看此主题相关图片如下:当前行 框选多列.png
图片点击可在新窗口打开查看

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:当前行 框选非日期列填充 已完成.foxdb

[此贴子已经被作者于2018/8/15 17:21:53编辑过]

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


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

Dim t As Table = CurrentTable
For i As Integer = t.LeftCol To t.RightCol
    If t.Cols(i).IsDate = False Then
        t.current(i) = "已完成"
    End If
Next

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


加好友 发短信
等级:四尾狐 帖子:812 积分:6688 威望:0 精华:0 注册:2014/11/26 12:32:00
回复:(有点甜)Dim t As Table = CurrentTableFor i...  发帖心情 Post By:2018/8/16 15:50:00 [只看该作者]

 行 框选中的日期列 清空,非日期列字符串值不变,下面代码,有缺陷吗?
Dim t As Table = CurrentTable
For i As Integer = t.LeftCol To t.RightCol
    If t.Cols(i).IsDate = True Then
        t.current(i) = Date.MinValue
    End If
Next

[此贴子已经被作者于2018/8/16 16:14:55编辑过]

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


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

 

 t.current(i) = Nothing


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


加好友 发短信
等级:四尾狐 帖子:812 积分:6688 威望:0 精华:0 注册:2014/11/26 12:32:00
回复:(有点甜)  t.current(i) = Nothi...  发帖心情 Post By:2018/8/17 7:47:00 [只看该作者]

如果要撤销上面的代码操作,代码怎么写呢?系统的后退不行

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


加好友 发短信
等级:超级版主 帖子:110592 积分:562856 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/8/17 8:58:00 [只看该作者]


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


加好友 发短信
等级:四尾狐 帖子:812 积分:6688 威望:0 精华:0 注册:2014/11/26 12:32:00
回复:(有点蓝)参考:http://www.foxtable.com/webh...  发帖心情 Post By:2018/8/17 9:30:00 [只看该作者]

如果之前对表修改过表还未保存,再执行下面代码
 Dim t As Table = CurrentTable
For i As Integer = t.LeftCol To t.RightCol
    If t.Cols(i).IsDate = False Then
        t.current(i) = "已完成"
    End If
Next

要保存之前对表的修改,不保存上面代码操作的效果,代码怎么写呢?

Syscmd.Edit.Undo() 这个撤销对上面代码撤销失效

 
下面代码撤销会把之前对表修改过也一并 撤销,不是想要的效果

DataTables("表A").RejectChanges()



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


加好友 发短信
等级:超级版主 帖子:110592 积分:562856 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/8/17 9:37:00 [只看该作者]

代码赋值的没有办法使用Undo,只能重新使用代码赋值

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


加好友 发短信
等级:四尾狐 帖子:812 积分:6688 威望:0 精华:0 注册:2014/11/26 12:32:00
回复:(有点甜)Dim t As Table = CurrentTableFor i...  发帖心情 Post By:2018/8/17 9:49:00 [只看该作者]

 这个代码是单行,非日期列填充字符  已完成
要改成多行,可以非日期列填充字符  已完成,代码怎么修改呢?谢谢
不知道怎么结合下面的代码修改
For i As Integer = CurrentTable.LeftCol To CurrentTable.RightCol
    For j As Integer = CurrentTable.TopRow + 1 To CurrentTable.BottomRow
        CurrentTable.Rows(j)(i) = CurrentTable.Rows(CurrentTable.TopRow)(i)
    Next
Next

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


加好友 发短信
等级:超级版主 帖子:110592 积分:562856 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2018/8/17 10:03:00 [只看该作者]

Dim t As Table = CurrentTable

For i As Integer = t.LeftCol To t.RightCol
If t.Cols(i).IsDate = False Then
    For j As Integer = t.TopRow + 1 To t.BottomRow
        t.Rows(j)(i) = t.Rows(t.TopRow)(i)
    Next
end if
Next

 回到顶部
总数 22 1 2 3 下一页