设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

12下一页
返回列表 发新帖
查看: 4239|回复: 10
打印 上一主题 下一主题

[窗体] SplitForm中如何隐藏列?

[复制链接]
跳转到指定楼层
1#
发表于 2018-11-28 13:23:55 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
20金钱
在数据表格式中可以用ColumnHidden的方法将列隐藏起来,例如:
Me.Form.Controls("XXX1").ColumnHidden = True

将窗体改成SplitForm(上面窗体,下面数据表)之后,用同样的方法隐藏不了了。
求解决方法。

最佳答案

查看完整内容

不知道你为什么要这样设计窗体,有更好的设计方式。 按你的设想是可以实现的,有些麻烦。 1、ColumnHidden 起作用只能在 Form_Open,所以需要好好设计你的Form_Open 2、在需要改变ColumnHidden的地方,触发 Form_Open,简单简单代码如下: Private Sub Command1_Click() 开关 = True DoCmd.OpenForm "窗体1", acFormDS DoCmd.OpenForm "窗体1", acNormal End Sub Private Sub Command2_Click() 开关 ...
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2018-11-28 13:23:56 | 只看该作者
不知道你为什么要这样设计窗体,有更好的设计方式。
按你的设想是可以实现的,有些麻烦。
1、ColumnHidden 起作用只能在 Form_Open,所以需要好好设计你的Form_Open
2、在需要改变ColumnHidden的地方,触发 Form_Open,简单简单代码如下:

Private Sub Command1_Click()
    开关 = True
    DoCmd.OpenForm "窗体1", acFormDS
    DoCmd.OpenForm "窗体1", acNormal
End Sub

Private Sub Command2_Click()
   开关 = False
   DoCmd.OpenForm "窗体1", acFormDS
   DoCmd.OpenForm "窗体1", acNormal
End Sub


Private Sub Form_Open(Cancel As Integer)
Me.Form.Controls("列1").ColumnHidden = 开关
End Sub

当然还需要在模块中加入:Public 开关 As Boolean
回复

使用道具 举报

3#
 楼主| 发表于 2018-11-28 22:46:28 | 只看该作者
没人回答 。。。   
不知道是不是没有说清楚问题,上传附件说明下。
求大师快现身指导

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复

使用道具 举报

4#
发表于 2018-11-29 10:07:57 | 只看该作者
最简单方法:用系统自带的隐藏显示列  DoCmd.RunCommand acCmdUnhideColumns
回复

使用道具 举报

5#
发表于 2018-11-29 10:11:53 | 只看该作者
隐藏列
回复

使用道具 举报

6#
发表于 2018-11-29 10:12:49 | 只看该作者
系统自带的隐藏显示列

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
回复

使用道具 举报

7#
 楼主| 发表于 2018-11-29 10:13:06 | 只看该作者
六月雪 发表于 2018-11-29 10:07
最简单方法:用系统自带的隐藏显示列  DoCmd.RunCommand acCmdUnhideColumns

这个解决不了问题,弹出来一个窗口还是要用户自己勾选。
我的应用场景是这样的 - 根据筛选条件自动隐藏和现实对应的很多个列,这样用户不用自己去勾选,
一是浪费时间,二是会选错。
回复

使用道具 举报

点击这里给我发消息

8#
发表于 2018-11-29 14:56:17 | 只看该作者
可以用父子窗体 代替
回复

使用道具 举报

9#
 楼主| 发表于 2018-11-30 09:29:21 | 只看该作者
admin 发表于 2018-11-29 14:56
可以用父子窗体 代替

是的,目前用的就是父子窗体。
在升级软件时为了精简代码改用分割窗体结果碰到这问题了。
回复

使用道具 举报

10#
 楼主| 发表于 2018-11-30 09:42:19 | 只看该作者
cgsilicone 发表于 2018-11-28 13:23
不知道你为什么要这样设计窗体,有更好的设计方式。
按你的设想是可以实现的,有些麻烦。
1、ColumnHidde ...

谢谢了,困扰了几天的问题虽然没有完美解决,但已经是目前知道的“最佳答案”了。
不知道您说的“更好的设计方式”是指什么?

之前用的父子窗体模式,对列可以用代码自由控制没有问题。
后来发现分割窗体有许多优势,窗体和代码都少了,只加载一个窗体速度也更快。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-12-1 20:39 , Processed in 0.106461 second(s), 35 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表