以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 有规律的隐藏列 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=171279) |
||||
-- 作者:cd_tdh -- 发布时间:2021/8/25 9:56:00 -- 有规律的隐藏列 老师,我一个表,做垂直表在转换确实太麻烦,就做的水平表,我打开表时,隐藏所有结算情况(第1-24期)的列,筛选出分包队伍时,隐藏已经计算的期数列,比如张三,隐藏1-3期结算的列,显示4期的列,隐藏5-24期的列,,李四,隐藏1-2期结算的列,显示3期的列,隐藏4-24期的列,怎么来写呢,做了个示例,请老师看看?
[此贴子已经被作者于2021/8/25 10:45:53编辑过]
|
||||
-- 作者:有点蓝 -- 发布时间:2021/8/25 10:02:00 -- 隐藏列参考:http://www.foxtable.com/webhelp/topics/0572.htm |
||||
-- 作者:cd_tdh -- 发布时间:2021/8/25 10:09:00 -- 老师,挨个判断在隐藏我知道,这样太繁琐,结算情况我是按照第1、第2.....第24期这样命名的,有什么简单点的方法不。 需要判断已经结算的最大期数,结算了的不隐藏,未结算的第1期不隐藏,后面的隐藏 [此贴子已经被作者于2021/8/25 10:16:41编辑过]
|
||||
-- 作者:有点蓝 -- 发布时间:2021/8/25 10:15:00 -- 合成列名,比如 for i as integer = 1 to 24 msgbox("第" & i & "期") Tables("订单").Cols("第" & i & "期").Visible = False next
|
||||
-- 作者:cd_tdh -- 发布时间:2021/8/25 10:18:00 -- 怎么判断已经结算的最大期数呢? [此贴子已经被作者于2021/8/25 10:19:54编辑过]
|
||||
-- 作者:有点蓝 -- 发布时间:2021/8/25 10:35:00 -- 怎么样才算是:已经结算的最大期数? |
||||
-- 作者:cd_tdh -- 发布时间:2021/8/25 10:45:00 -- 例如示例里面,张三已结算的最大期数为第3期,李四为第2期 在筛选张三的时候,计量期数就只显示第4期,筛选出李四时,计量期数就只显示第3期,其余结算期数都不显示 1楼上传了示例 [此贴子已经被作者于2021/8/25 10:45:04编辑过]
|
||||
-- 作者:有点蓝 -- 发布时间:2021/8/25 10:57:00 -- 遍历所有列,判断这列是否有数据 |
||||
-- 作者:cd_tdh -- 发布时间:2021/8/25 11:31:00 -- 请老师给写一下,看该怎么写呢,代码写到增加结算期数的一个按钮里面的 If e.Form.Controls("项目名称").value = "" Then Tables("分包结算表").Cols("第4期数量").Move(7) \'移动列到制定位置 |
||||
-- 作者:有点蓝 -- 发布时间:2021/8/25 11:37:00 -- For Each dc As Col In Tables("分包结算表").Cols if dc.name like "第*" then if Tables("分包结算表").compute("count(" & dc.name & ")", dc.name & " is not null") = 0 then dc.Visible =false else dc.Visible =true endif endif Next |