ACCESS数据查询窗体设计
- 格式:doc
- 大小:56.00 KB
- 文档页数:4
实验三窗体操作一、使用“自动创建窗体”功能创建窗体以课程表为数据源,利用自动创建窗体功能分别创建纵栏式、表格式、数据表式三个窗体,依次命名为“课程表纵栏式”、“课程表表格式”、“课程表数据表式”。
要求包括所有字段。
二、使用图表向导创建窗体1.以“学生成绩查询1”为数据源,建立图表窗体“学生各门课程成绩图表窗体”,用柱形图表示学生选修各门课程的期末成绩。
要求图表标题为“学生各门课程成绩”。
2.以“学生成绩查询1”为数据源,建立图表窗体“学生平均成绩图表窗体”,用柱形图表示学生的期末成绩的平均分。
要求图表标题为“学生平均成绩”。
三、使用窗体向导创建窗体1.以学生表为数据源,使用向导创建“学生信息”窗体。
布局为“纵栏式”,样式为“工业”,窗体标题为“学生信息”。
要求包括所有字段。
2.以学生表、成绩表、课程表为数据源,使用向导创建“学生信息主窗体”和“学生成绩子窗体”,包括学号、姓名、课程号、课程名、平时成绩、期末成绩字段。
(要求指定查看数据的方式为“通过学生表”)(思考:如果指定查看数据的方式为“通过课程表”有什么不同?如果为“通过成绩表”又有什么不同?)四、使用设计视图创建窗体1.以“学生成绩查询1”为数据源,使用设计视图创建窗体“学生选课信息”,如图4.1所示。
要求:1)窗体页眉为:学生选课信息,字体为华文新魏,字号为20,红色。
2)窗体标题为:学生选课情况。
3)窗体没有最大化最小化按钮,也没有记录选择器。
4)把主体中的标签和文本框的字号都设置为12。
5)给窗体设置背景,背景图片自已准备。
图片类型为嵌入,图片缩放模式为拉伸。
图4.12.创建“学生档案及学生成绩多页窗体”,如图4.2和图4.3所示。
图4.2图4.3提示:1)使用“设计视图”创建窗体,选择“学生表”作为数据源。
2)选择工具箱中的“选项卡”控件,在要放置选项卡的位置拖出一个矩形框。
3)选择学生表中的所有字段,拖动到“页1”中,调整好位置和大小。
一.概述作为数据管理程序,统计和查询功能是非常重要的。
否则,就和电子表格没有区别了。
所以,在每个ACCESS程序中都不可能缺少查询的功能。
本文的目的是由浅入深的介绍几种最常用的利用主/子窗体来实现查询的方法,使初学者和有一定VBA基础的人可以更好的使用窗体查询这种手段。
附件中的窗体“常用窗体查询0.MDB”,仅包含3个数据表、1个查询和以这个查询为数据源的报表。
是为了大家根据后面学习的内容作练习用的。
我们先看查询中的数据:书籍编号书名类别作者出版社单价进书日期22 CHIP-01-08 报刊电子计算机与外部设备期刊社电子计算机与外部设备¥16.80 2001-9-2825 电脑新时代-6光盘光盘UNKNOWN 电脑新时代¥5.00 2002-7-8 27 学电脑-7光盘光盘UNKNOWN 人民邮电¥5.00 2002-7-1328 CHIP-02-07光盘光盘电子计算机与外部设备杂志社电子计算机与外部设备¥5.00 2002-7-1316 MCSE学习指南书籍Syngress Media公司人民邮电¥62.00 2001-9-2817 局域网原理与架设技术内幕大公开书籍蔡昌均中国青年¥69.00 2001-9-2819 AccessVBA基础书籍EvanCallahan 人民邮电¥39.00 2001-9-2820 中文版Access2001一册通书籍赵琳等人民邮电¥42.00 2001-9-2821 VISUALBASIC5.0教程书籍SteveBrown 电子工业¥28.00 2001-9-2823 中文版VisualBasic5.0程序员指南书籍microsoft 中国青年¥70.00 2001-9-2824 Access中文版开发指南书籍Alison Balter 人民邮电¥128.00 2002-2-1629 Access 2002数据库系统开发实例导航书籍桂思强中国铁道¥25.00 2003-3-1030 中国名陵——集中华古代名陵之大成书籍罗哲文等百花文艺¥14.00 2003-5-2031 边缘部落——福音谷书籍林茨(撰文摄影)河北教育¥27.00 2003-5-20 为了比较有代表性,这个查询中包含多种字段类型:数字类型:【书籍编号】、【单价】字符类型:【书名】、【类别】、【作者】、【出版社】日期类型:【进书日期】在多条件查询中,我们会使用除了【书籍编号】之外的其他字段作为查询条件。
关于access2010创建账户密码登陆框2012-04-04 10:56匿名|分类:数据库DB |浏览1545次按照access2007教程做了个有密码的登陆框但是无法运行弹出错误调试什么的以下是教程代码:If IsNull(Me.管理用户) ThenMsgBox "请输入管理用户的帐号!", vbQuestionExit SubEnd IfIf IsNull(Me.登录密码) ThenMsgBox "请输入管理用户的登录密码!", vbQuestionExit SubEnd IfIf adlogin = True ThenDoCmd.Close acForm, DoCmd.OpenForm "职员考勤主界面"ElseMsgBox " 管理用户帐号或密码错误,请重新输入! ", vbCriticalExit SubEnd IfPublic Function adlogin() As BooleanDim str As DatabaseDim rsSet str = CurrentDbSet rs = str.OpenRecordset("select 管理用户,登录密码 from 管理员信息 where 管理用户= '" & Me.管理用户 & "' and 登录密码='" & Me.登录密码 & "'")If Not rs.EOF ThenIf rs.Fields("登录密码") = Me.登录密码 Then adlogin = TrueEnd IfEnd FunctionIf MsgBox(" 您是否确定退出本系统?按 [ 是 ] 确定按 [ 否 ] 取消 ", vbQuestion + vbYesNo) = vbYes ThenDoCmd.Quit acQuitSaveAllEnd If--------------------------------------分割线------------------------------错误行:Set rs = str.OpenRecordset("select 管理用户,登录密码 from 管理员信息 where 管理用户= '" & Me.管理用户 & "' and 登录密码='" & Me.登录密码 & "'")重复做了3变还是有错误不知道是怎么回事分享到:2012-04-10 10:17提问者采纳你是不是做得太麻烦了;ACCESS还不好解决,你直接给窗体指定用户表做数据源Private Sub 登陆_Click()If Trim(用户名) = Me.用户名 And Trim(密码) = Me.密码 ThenDoCmd.CloseDoCmd.OpenForm ("职员考勤主界面")Else: MSGBOX("错误提示")Me.SetFocusMe.用户名= ""Me.密码 = ""End IfEnd Sub你别把自己搞糊涂了,没有哪个动作去调用函数查数据源,都没查到数据源怎么判断,很简单的问题别想太复杂了,如果你觉得不该用窗体数据源,那你就定义一个连接吧,呼叫连接一样的效果,消息对话框随你怎么写.还有,你存在一个根本性的错误:你定义的不是窗体数据源,怎么用窗体去筛选,那就判断数据连接是否查询到了记录就行了,而不是判断窗体控件是否为NULL.有两个办法,1.判断查询有没有记录来决定登陆事件2.给控件指定到数据源,判断控件是否为空查询.改一下思路,很简单的评论(2)|1各种 trim 函数的语法如下:LTRIM(字串):将字串左边的空格移除。
复习:
1、窗体按其功能可以分为哪几种?
2、窗体常用的视图有哪三种?
3、窗体的组成?基本组成部分有哪三部分?默认是哪个部分。
4、在窗体中,对象的属性有哪几种?
5、控件可以分为哪几种?
6、窗体的数据源有哪几种?
新授课:
任务二数据查询窗体设计
任务描述:通过设计数据查询窗体,了解数据查询窗体的基本功能及结构;理解掌握主/子窗体的作用、设计数据查询窗体的基本步骤;学会设计数据查询窗体,并能够为用户简单查询交互界面。
一、设计数据查询窗体
例7-3:设计一个查询学生成绩窗体,实现按学号或姓名查询学生的学号、姓名、班级名称课程名称及成绩。
窗体样张如下:
具体功能分析:运行查询窗体时,如果在主窗体对应文本框不输入学号和姓名时,子窗体中显示所有学生的信息;当只输入学号并单击搜索时,显示该学生的信息;当只输入姓名全名或部分并单击搜索时,子窗体显示满足条件的信息;当输入学号和姓名并单击搜索时,子窗体显示满足条件的信息;单击关闭按钮时,关闭该窗体。
操作步骤:
1、创建主窗体,保存为MAIN1。
在主窗体中添加两个文本框,文本框名称分别为xh1,xm1;使用标签在添加“查询学生成绩”标题文本;添加窗体标题“按学号或姓名查询学生成绩(学号)”;修改窗体的相关格式属性。
2、创建一个查询,保存为query1。
查询代码如下:
SELECT stu.xh, stu.xm AS 姓名, stu.bjmc AS 班级名称,
kcb.kcmc AS 课程名称, cjb.cj AS 成绩
FROM stu INNER JOIN (kcb INNER JOIN cjb ON kcb.kch = cjb.kch)
ON stu.xh = cjb.xh
WHERE ((([forms]![main1].[xh1]) Is Null) AND (([forms]![main1].[xm1]) Is Null))
OR (((stu.xh)=[forms]![main1].[xh1]) AND (([forms]![main1].[xm1]) Is Null)) OR (((stu.xm) Like "*" & [forms]![main1].[xm1] & "*") AND (([forms]![main1].[xh1]) Is Null))
OR (((stu.xh)=[forms]![main1].[xh1]) AND ((stu.xm) Like "*" & [forms]![main1].[xm1] & "*"));
3、创建数据表窗体,保存为ZCT1。
(修改数据表窗体的相关格式和数据属性)。
4、创建主子窗体,将数据表窗体(ZCT1)拖动到主窗体中,并为“子窗体/子报表”对象命名为ZCTDX。
5、向主窗体添加命令按钮,并保存窗体。
(1)搜索按钮:按钮名称为SS1,标题“搜索”,该按钮的单击事件代码为“ME!ZCTDX.REQUERY”。
(2)关闭按钮:按钮名称为GB1,标题“关闭”,该钮的单击事件代码为“DOCMD.CLOSE”。
提高篇设置:
(1)运行窗体设计设置主/子窗体的格式及数据属性。
(2)为接收数据的文本框设置获得焦点事件
Private Sub xh1_GotFocus()
xh1 = Null
End Sub
Private Sub xm1_GotFocus()
xm1 = Null
End Sub
二、数据查询窗体相关知识
1、主/子窗体
窗体中的基本窗体是主窗体,窗体中的窗体称为子窗体。
主/子窗体用于同时显示两张表或多张表,它主要用来显示一对多的关系。
一般来说,主窗体显示一对多关系中的一端表(主表)信息,通常使用纵栏式窗体;子窗体显示一对多关系的多端表(相关表)的信息,通常使用表格式窗体或数据工作表窗体。
)
2、窗体中对象的引用方法
格式:FORMS!窗体名称.控件名或 FORMS!窗体名称!控件名
3、确定查询的条件(关键)
设计数据查询窗体时,条件的组数据是由接收条件的文件框个数决定的。
如果有N个接收数据的文件框,则查询条件应有n2组。
4、在VBA窗口,设置对象的名称及代码。
练习:
1、设计一个查询窗体,实现按姓名或课程名称查询学生的学号、姓名、班级名称、课程名称及成绩,保存窗体为“按姓名和课程名称查询学生学生成绩”。
2、设计一个查询窗体,实现按班级或姓名查询学生的信息,保存窗体为“查询学生基本情况”。
小结:
1、确定查询条件数
2、窗体中对象的引用方法
3、数据查询窗体的操作步骤:
案例:按课程名称模糊查询学生的学号、姓名、课程名称及成绩。
要求:不输入课程名称中,在子窗体中显示所有信息;当输入完整或部分课程名称时,单击“搜索”可以查出所有相关课程的学生成绩;单击“关闭”可以关闭该窗体。
1、创建主窗体,添加一个文本框,文本框名称为(kcmc99),保存主窗体名称为(FRM99)。
2、创建查询,保存为(Q99),查询代码如下:
Select stu99.xh AS 学号,stu99.xm as 姓名,kcb99.kcmc as 课程名称,cjb99.cj as 成绩
From (stu99 inner join cjb99 on stu99.xh=cjb99.xh) inner join kcb99 on cjb99.kch=kcb99.kch
Where FORMS!FRM99. kcmc99IS NULL
OR KCB99.KCMC LIKE “*” & FORMS!FRM99. kcmc99& “*”
3、以(Q99)为记录源,创建数据表窗体,保存为(SJBCT99)。
4、创建主子窗体,将数据表窗体(SJBCT99)拖动到主窗体的主体中,系统自动添加一个子窗体或子报表控件,给该对象的名称为(ZCTDX99)
5、在主窗体中,添加两个按钮,按钮标题文本分别为“搜索”和“关闭”,其中,搜索按钮的单击事件代码为(ME!ZCTDX99.REQUERY),关闭按钮的单击事件代码为(DOCMD.CLOSE)。
作业:
6、什么是主窗体、子窗体?主/子窗体有哪些作用?
参考答案:
窗体中的基本窗体是主窗体,窗体中的窗体称为子窗体。
主/子窗体用于同时显示两张表或多张表,它主要用来显示一对多的关系。
一般来说,主窗体显示一对多关系中的一端表(主表)信息,通常使用纵栏式窗体;子窗体显示一对多关系的多端表(相关表)的信息,通常使用表格式窗体或数据工作表窗体。
7、简述设计数据查询窗体的基本步骤。