Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

借用jia老师的窗口请教:筛选后如何做到有选择地导出

wyh99999  发表于:2012-04-03 15:14:33  
复制

借用jia老师的窗口请教: ( jia老师解答小一 http://www.accessoft.com/bbs/showtopic.asp?id=14550 )

   我的问题是:   筛选后如何做到有选择地导出我想导出的字段?

 

点击下载此附件

 

Top
落尘_小新 发表于:2012-04-03 17:05:36

传个示例

方法有点笨,公供参考。

 

 

点击下载此附件

wsl 发表于:2012-04-03 18:39:24

落尘_小新的方法可行,其“是否导出_AfterUpdate”事件可以修改成下面这样:


Private Sub 是否导出_AfterUpdate()
  Dim ctl As Control
  For Each ctl In Forms!FrmOpen!frmChild.Form.Controls
    If ctl.Name = Me.导出字段.Value Then ctl.ColumnHidden = Not Me.是否导出
  Next ctl
End Sub



落尘_小新 发表于:2012-04-03 20:20:57

wsl 的方法很好。不过这样一来每次都要遍历一遍 frmchild 子窗体中的控件,效率不高。

 

更新如下方法,我觉得会更好点。

 

Private Sub 是否导出_AfterUpdate()
    If Me.是否导出 = True Then
        Forms!FrmOpen!frmChild.Controls(Me.导出字段).ColumnHidden = False
    Else
        Forms!FrmOpen!frmChild.Controls(Me.导出字段).ColumnHidden = True
    End If
End Sub



wyh99999 发表于:2012-04-03 20:27:59

谢谢两位老师。



wyh99999 发表于:2012-04-03 21:55:22

再请教:“清空条件”后,如何让“子窗体”中的字段全部显示出来?

 

点击下载此附件

落尘_小新 发表于:2012-04-03 22:14:52

已改好。

 

点击下载此附件



落尘_小新 发表于:2012-04-03 22:30:07

干脆,好人做到底。在列数比较多时,用下面的方法,更有效。

Dim ctr As Control
    For Each ctr In Forms!FrmOpen!frmChild.Form.Controls
        If ctr.Section = acDetail And TypeOf ctr Is TextBox Then
            ctr.ColumnHidden = False
        End If
    Next ctr



wyh99999 发表于:2012-04-04 00:33:04
非常感谢落尘_小新

总记录:8篇  页次:1/1 9 1 :