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


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

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

帅哥哟,离线,有人找我吗?
湛江智
  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


加好友 发短信
等级:四尾狐 帖子: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编辑过]

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


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

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

 回到顶部
帅哥哟,离线,有人找我吗?
湛江智
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | 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()



 回到顶部
帅哥哟,离线,有人找我吗?
湛江智
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | 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

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


加好友 发短信
等级:四尾狐 帖子:812 积分:6688 威望:0 精华:0 注册:2014/11/26 12:32:00
回复:(有点蓝)Dim t As Table = CurrentTableFor i...  发帖心情 Post By:2018/8/17 11:38:00 [显示全部帖子]

如图,隐藏完成否列 行框选 _计划完成日期列,对应的 _完成否列 填充字符:已完成

代码求帮助修改,谢谢 七夕快乐

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:隐藏完成否列.foxdb


图片点击可在新窗口打开查看此主题相关图片如下:隐藏完成否列.png
图片点击可在新窗口打开查看


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


加好友 发短信
等级:四尾狐 帖子:812 积分:6688 威望:0 精华:0 注册:2014/11/26 12:32:00
回复:(有点蓝)判断条件是什么?没看懂!  发帖心情 Post By:2018/8/17 12:09:00 [显示全部帖子]

想实现是框选日期列,录入对应 完成否列 字符:已完成,日期列根据完成否列里面的字符:已完成  单元格背景样式调用 已完成样式(背景绿色)

 思路感觉可以这样: 框选的列名 加后缀_完成否  的列录入字符 已完成

坛主,理解我表达的想法没?

代码求帮助,谢谢

 

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:框选日期列录入已完成后日期列背景绿色3.foxdb


图片点击可在新窗口打开查看此主题相关图片如下:框选红色区域 按钮或录入 已完成.jpg
图片点击可在新窗口打开查看

 

操作步骤如上图:框选红色区域,按钮确定,录入蓝色区域 4个完成否列录入 已完成

上面操作后,红色区域单元格背景色变成 绿色,效果如下图:


图片点击可在新窗口打开查看此主题相关图片如下:ok.jpg
图片点击可在新窗口打开查看
[此贴子已经被作者于2018/8/17 14:50:36编辑过]

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


加好友 发短信
等级:四尾狐 帖子:812 积分:6688 威望:0 精华:0 注册:2014/11/26 12:32:00
回复:(有点蓝)和日期列有什么关系?意思是日期列有...  发帖心情 Post By:2018/8/17 15:18:00 [显示全部帖子]

买菜             粗加工             精加工            烹饪              是真列名,显示列标题为: 买菜_计划完成日期    粗加工_计划完成日期    精加工_计划完成日期     烹饪_计划完成日期  

买菜_完成否  粗加工_完成否   精加工_完成否   烹饪_完成否   

完成否列名,比计划完成日期列名,实际多一个后缀 _完成否  

 

上面5列日期列,可以为空,也可以在对应的 _完成否 列录入 已完成3个字——因为很多时候不记得买菜 粗加工 精加工 烹饪的具体完成时间

其实就想实现想 甘特图的效果——绿色进度条(如果记得日期,就显示在上面)


图片点击可在新窗口打开查看此主题相关图片如下:列名前缀一样 后缀多3个字_完成否.png
图片点击可在新窗口打开查看

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

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


加好友 发短信
等级:四尾狐 帖子:812 积分:6688 威望:0 精华:0 注册:2014/11/26 12:32:00
回复:(有点蓝)我就想问:在对应的 _完成否 列录入 ...  发帖心情 Post By:2018/8/17 15:24:00 [显示全部帖子]

选中的行都全部填入已完成3个字——计划完成日期列,跳过不录入

完成否列——在隐藏列的情况下,录入 已完成3个字

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

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


加好友 发短信
等级:四尾狐 帖子:812 积分:6688 威望:0 精华:0 注册:2014/11/26 12:32:00
回复:(有点蓝)Dim t As Table = CurrentTableFor i...  发帖心情 Post By:2018/8/17 15:58:00 [显示全部帖子]

 坛主,不好意思,我在17楼 描述有误:
选中的行都全部填入已完成3个字

只想行中框选的部分列,不是整行的_完成否列都录入,代码还需怎么修改才能实现呢?
Dim t As Table = CurrentTable
'For i As Integer = t.TopRow To t.BottomRow
For i As Integer = t.LeftCol To t.RightCol

    For Each c As Col In t.Cols
        If c.Name.EndsWith("_完成否") Then
            t.Rows(i)(c.Name) = "已完成"
        End If
    Next
Next
t.Refresh
[此贴子已经被作者于2018/8/17 15:58:57编辑过]

 回到顶部
总数 12 1 2 下一页