Access交流中心

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

如何清除掉窗体中的所有文本框/组合框的残留数据?

白胖纸  发表于:2013-07-19 09:46:45  
复制

因为窗体中有很多文本框和组合框,在修改的时候,有一些残留数据在上头,怎样可以一次性清空他们?


如果一个组合框的更新后事件发生后,要清空所有文本框,又要如何做呢?


好像有个遍历所有对象的函数,但是不会做,请各位大侠帮忙~~~

 

Top
煮江品茶 发表于:2013-07-19 10:13:47
sub ResetControlsValue()
  dim ctrl as control
  for each ctrl in me.controls
    if ctrl.controltype=acTextBox or ctrl.controltype=acComboBox then
      ctrl.value=null
    end if
  next
end sub

蟹仔 发表于:2013-07-19 10:13:49

如果你的控件只有几十个,那就更新后直接写xxxx控件=""  不就行了,如果你有一两百个。那就把控件改成统计的格式。XX加上数字。接着

 for i = 1 to 控件数 

Me.Controls("XX" & 控件数)=“” 

next 

如果你有几千个控件。那就这样 


Dim Tbox As Access.Control
For Each Tbox In Me.Controls
If Tbox .ControlType = acTextBox Then
Tbox = ""
End If
Next
不建议你用第三种。因为这样子所有文本框都会改变。

白胖纸 发表于:2013-07-19 11:05:18
哈哈,帮大忙了,太感谢各位大大了~

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