关于Access如何将表中某一字段,全部内容显示在窗体文本框中的问题!

举个例子现在有一个表如图:

有一个窗体希望实现的效果如图:

简单地说就是按照“金额”来显示对应的“型号“和”入库数量“。
比如输入”金额“为100时,出现上述效果,我遇到的困难就是:窗体中的文本框无法在一个界面内显示全部记录,而是一条一条的记录!后台代码我想把”型号“和”入库数量“形成”数组“然后显示在文本框中,请问可以实现预期效果吗?如果可以求代码该怎么写,如果不能还请大神们详细指点,谢谢!说表格视图显示窗体的,就别浪费时间了,这我也知道。。。

1、首先,打开Access数据库表。

2、右键单击“表1”,选择“设计视图”,打开视图设计窗口。

3、选择“性别”字段的数据类型框,双击打开,选择“查阅向导...”。

4、在“查阅向导”窗口选择“自行键入所需的值(Y)”,点击“下一步”。

5、在第一列下方的输入框中输入“男、女”。点击“完成”。

6、选择菜单栏中的“视图”,选择“数据透视表视图”。

7、双击“性别”,查看此前操作是否正确。

注意事项:

MS ACCESS以它自己的格式将数据存储在基于Access Jet的数据库引擎里。它还可以直接导入或者链接数据(这些数据存储在其他应用程序和数据库)。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-09-08

解决思路,用SQL语言检索出数据表某一字段下的全部内容,然后用VBA代码(ACCESS自带的编程语言)逐条将相应内容输入到窗体文本框内。


下面例子示范在打开窗体时,将当前ACCESS数据库里学生表中的全部学生姓名显示到一个文本框(Text1)内。

数据表结构及数据如下图


编写下列窗体打开事件过程

Private Sub Form_Open(Cancel As Integer)
    Dim rs As New ADODB.Recordset  '声明并实例化ADO记录集对象
    Dim strSql As String, strg As String
    strSql = "select 姓名 from 学生表" '编写SQL查询语句,以便检索出全部学生的姓名
    rs.Open strSql, CurrentProject.Connection, adOpenStatic, adLockReadOnly '打开记录集
    Do Until rs.EOF  '循环将记录集中的学生姓名写入变量strg
        strg = strg & rs!姓名 & vbCrLf '每次读出一个姓名到变量并加上回车\换行符以便每行只显示一个姓名
        rs.MoveNext   '移动到下一条记录
    Loop
    Text1 = strg '显示全部名字到文本框
    If rs.State = adStateOpen Then rs.Close  '关闭记录集
    Set rs = Nothing    '释放记录集对象所占空间
End Sub

上述代码(ADO Recordset) Open方法中所使用参数说明

strSql  此参数里的SQL语句确定如何检索出数据

CurrentProject.Connection  记录集所引用当前ACCESS数据库的默认连接

adOpenStatic  指定记录集的游标类型为静态游标

adLockReadOnly 指定记录集的锁定(并发)类型为只读。(因为该记录集无需用于更新数据,故这里使用只读类型借以减少系统开销、提高运行速度)


请注意将文本框Text1的”滚动条“属性设置为”垂直“,以方便姓名很多时可用滚动条来查看。另外,上述代码需要引用ADO类库,否则运行将会报错。


ACCESS引用ADO类库方法

于VBE界面 菜单——工具——引用 在弹出的引用对话框勾选“Microsoft  ActiveX Data Objects 2.1 Library"或其他版本


运行效果见下图

第2个回答  2013-03-12
在VB里这个不难做到,只要文本框足够宽!追问

求具体!在access里

第3个回答  2013-03-12
我也不清楚 可以用查询嘛
相似回答