ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 1094|回复: 6

[求助] 求教一个ListBox的问题

[复制链接]

TA的精华主题

TA的得分主题

发表于 2012-3-29 12:54 | 显示全部楼层 |阅读模式
大家好:
    小弟求助各位老师一个关于ListBox的问题,谢谢大家。
    附件是一个采购系统,其中有一张表,名为“采购目录”,记录着所有可以采购物品的清单。还有一个窗体,名为“采购单”,采购单必须从“采购目录”中选择物品进行购买。
    现在看窗体“采购单”,窗体右边有几个文本框和下拉框,其中关注三个下拉框:名称、型号、数量单位。填写采购单时,首先选择名称,例如“计算机”。这个选择的过程中,通过“名称”下拉框的Click事件,自动生成了“型号”下拉框的Item供选择。然后在“型号”中选择,例如选择“联想”。我通过如下代码来实现“数量单位”下拉框Item的生成:

Private Sub 采购单_型号_Click()
Me.采购单_数量单位 = ""
Me.采购单_数量单位.RowSource = "select 数量单位 from 采购目录 where 名称=""" & Me.采购单_名称 & """ AND 型号=""" & Me.采购单_型号 & """ Group By 数量单位"
End Sub

    这段代码的方法和“名称”Click事件生成“型号”Item的方法完全一样,可是“数量单位”的Item就是无法生成,这是为什么啊?
    另外再补充一个小问题,就是生成Item之后,我希望将第一个Item自动设为这个对话框的默认值,如何实现?谢谢大家。

aa.rar

63.84 KB, 下载次数: 19

TA的精华主题

TA的得分主题

 楼主| 发表于 2012-3-29 15:54 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
顶自己一下,谢谢。

TA的精华主题

TA的得分主题

发表于 2012-3-29 17:59 | 显示全部楼层
建议:
把“数量单位”组合框更改为文本框,并修改下列代码:
  1. Private Sub 采购单_型号_Click()
  2. Me.采购单_数量单位.Value = DLookup("数量单位", "采购目录", "名称='" & Me.采购单_名称 & "' AND 型号='" & Me.采购单_型号 & "'")
  3. End Sub
复制代码

TA的精华主题

TA的得分主题

发表于 2012-3-29 18:14 | 显示全部楼层
1、
数量单位的行来源类型要填写:表/查询,不能为空白
2、
Private Sub 采购单_型号_Click()
Me.采购单_数量单位 = ""
'MsgBox "select 数量单位 from 采购目录 where 名称=""" & Me.采购单_名称 & """ AND 型号=""" & Me.采购单_型号 & """ Group By 数量单位"
Me.采购单_数量单位.RowSource = "select 数量单位 from 采购目录 where 名称=""" & Me.采购单_名称 & """ AND 型号=""" & Me.采购单_型号 & """ Group By 数量单位"
Me.采购单_数量单位 = Me.采购单_数量单位.Column(0, 0)
End Sub

TA的精华主题

TA的得分主题

发表于 2012-3-29 18:18 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
...
Me.采购单_数量单位 = Me.采购单_数量单位.Column(0, 0)'将第一个Item自动设为这个对话框的值,不是默认值
...

TA的精华主题

TA的得分主题

发表于 2012-3-29 18:20 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
...
Me.采购单_数量单位.DefaultValue = """" & Me.采购单_数量单位.Column(0, 0) & """" '设置默认值
...

TA的精华主题

TA的得分主题

 楼主| 发表于 2012-3-30 09:30 | 显示全部楼层
谢谢两位前辈指点,让晚辈受益匪浅,谢谢,问题解决了。
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2025-1-10 13:13 , Processed in 0.021206 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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