Foxtable(狐表)用户栏目专家坐堂 → 变色单元格


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

主题:变色单元格

美女呀,离线,留言给我吧!
姗姗来迟
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:58 积分:483 威望:0 精华:0 注册:2011/11/14 13:38:00
变色单元格  发帖心情 Post By:2011/11/20 14:44:00 [只看该作者]

表A中一共有11列其中用逻辑列隔开(逻辑列有可能是正常列也有可能是公式列)当第一个逻辑列成对号后之前的单元格会变成颜色不是前面整列弯如何实现 亲亲们


 回到顶部
美女呀,离线,留言给我吧!
姗姗来迟
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:58 积分:483 威望:0 精华:0 注册:2011/11/14 13:38:00
  发帖心情 Post By:2011/11/20 14:44:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:变色.table


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


加好友 发短信
等级:七尾狐 帖子:1695 积分:10725 威望:0 精华:0 注册:2009/10/25 16:45:00
  发帖心情 Post By:2011/11/20 15:31:00 [只看该作者]

不懂你的问题,例子中也没有任何数据,:“逻辑列成对号后”怎么理解? 我笨啊。

 


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


加好友 发短信
等级:小狐 帖子:383 积分:2757 威望:0 精华:0 注册:2011/9/1 14:26:00
  发帖心情 Post By:2011/11/20 15:56:00 [只看该作者]

逻辑列成对号后前面不是有几个单元格吗 而后自动变成一个颜色,打对号的逻辑列后面不是还有单元格吗就不变色,就是以逻辑列为准打上对号后前面的单元格变色。

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


加好友 发短信
等级:七尾狐 帖子:1695 积分:10725 威望:0 精华:0 注册:2009/10/25 16:45:00
  发帖心情 Post By:2011/11/20 17:48:00 [只看该作者]

If (e.Row.IsNull(e.Col.Name) = False or e.Row.IsNull(e.Col.Name))And  e.Row("第四列") = True
    If Tables("表A").cols(e.Col.Name).Index < Tables("表A").cols("第四列").Index
        e.style = "zs"
    End If
End If
[此贴子已经被作者于2011-11-20 17:58:18编辑过]

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


加好友 发短信
等级:四尾狐 帖子:832 积分:5867 威望:0 精华:6 注册:2011/5/27 11:41:00
  发帖心情 Post By:2011/11/20 18:05:00 [只看该作者]

5楼的答案很强,学习了

 回到顶部
帅哥,在线噢!
y2287958
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:狐神 帖子:4751 积分:34563 威望:0 精华:0 注册:2008/8/31 22:44:00
  发帖心情 Post By:2011/11/20 18:21:00 [只看该作者]

Dim i As Integer = CurrentTable.Cols(e.Col.Name).Index
Select Case i
    Case 0 To 3
        If e.Row("第四列") = True
            e.style = "zs"
        End If
    Case 4 To 10
        If e.Row("第十一列") = True
            e.style = "sz"
        End If
End Select

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


加好友 发短信
等级:七尾狐 帖子:1695 积分:10725 威望:0 精华:0 注册:2009/10/25 16:45:00
  发帖心情 Post By:2011/11/20 18:45:00 [只看该作者]

楼上的代码在列位置固定的时候很好用!  下面的可以随便拖动“逻辑列”到任何位置。

Dim n1,n2,n3 As Integer
n1 = Tables("表A").cols(e.Col.Name).Index
n2 = Tables("表A").cols("第四列").Index
n3 = Tables("表A").cols("第十一列").Index
If n3 > n2
    If  e.Row("第四列") = True And n1 < n2
        e.style = "zs"
    End If
    If e.Row("第十一列") = True
        If n2 < n1 And n1 < n3
            e.style = "sz"
        End If
    End If
Else
    If  e.Row("第四列") = True And n1 < n3
        e.style = "sz"
    End If
    If e.Row("第十一列") = True
        If n3 < n1 And n1 < n2
            e.style = "zs"
        End If
    End If   
End If

[此贴子已经被作者于2011-11-20 18:47:13编辑过]

 回到顶部
美女呀,离线,留言给我吧!
姗姗来迟
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:58 积分:483 威望:0 精华:0 注册:2011/11/14 13:38:00
  发帖心情 Post By:2011/11/21 10:46:00 [只看该作者]

Dim n1,n2,n3 As Integer
n1 = Tables("表A").cols(e.Col.Name).Index
n2 = Tables("表A").cols("第四列").Index
n3 = Tables("表A").cols("第十一列").Index
If n3 > n2
If e.Row("第四列") = True And n1 < n2
e.style = "zs"
End If
If e.Row("第十一列") = True
If n2 < n1 And n1 < n3
e.style = "sz"
End If
End If
Else
If e.Row("第四列") = True And n1 < n3
e.style = "sz"
End If
If e.Row("第十一列") = True
If n3 < n1 And n1 < n2
e.style = "zs"
End If
End If
End If

 

 

这个代码运行起来会出现  如图


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20111121104445.png
图片点击可在新窗口打开查看

 回到顶部
帅哥,在线噢!
狐狸爸爸
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2011/11/21 10:47:00 [只看该作者]

你放错位置了,应该放在DrawCell事件中.

 回到顶部