您好,我只想知道如何在访问中制作一个连续的问卷调查表,一旦所有问题都被填写,它将更新所有表格。但在它到达页面末尾之前,用户将能够在表单之间来回编辑。
所以它会是这样的:
- 共有 30 个表格
- 一个表格只更新表中的1-3个字段
- 用户完成一个表单后,该表单将关闭并打开另一个表单。
- 用户将能够返回到以前的表单并对其进行编辑。
- 它仅可用的按钮 2 个按钮后退箭头和下一个箭头(保存数据并移动到另一个表单并关闭当前表单)
- 最后一个表格将保存所有数据。
- 当用户完成所有问题时,表单将允许从第一个问题重新打开,并将在表中插入全新的用户数据行。
我所做的是
- 我创建了一个带有框和标签的表单,直接连接到表格,因此它会实时更新。所以用户可以来回编辑它
- “下一步”按钮,使用宏关闭和打开新表单。
使用以下 VB 代码更新表格的最终形式:
Private Sub Close_Click() CurrentDb.Execute "INSERT INTO Demographics(vid, cid, dobd, gend, heght, heght2, wgt, wgt2, lschool, secschl, qualify, hqlify, army, abranch )" & _ "VALUES('" & vid1 & "','" & cid1 & "','" & dobd1 & "','" & gend1 & "','" & heght1 & "','" & heght21 & "','" & wgt1 & "','" & wgt21 & "','" & lschool & "','" & secschl1 & "','" & qualify1 & "','" & hqilfy1 & "','" & army1 & "','" & abranch1 & "')" cmdClear_Click cmdClose_Click End Sub Private Sub cmdClose_Click() DoCmd.Close End Sub Private Sub cmdClear_Click() vid1 = "" cid1 = "" dobd1 = "" gend1 = "" heght1 = "" heght21 = "" wgt1 = "" wgt21 = "" lschool1 = "" secschl = "" qualify = "" hqlify = "" army = "" abranch = "" End Sub Private Sub Form_Current() End Sub
问题:
- 上面的最后一页脚本根本不会将数据插入表中。
- 如果我对表中的列进行索引,它可以将数据插入表中,但如果我进行了大量更新,它最终会变得混乱
我的问题:
- 谁能建议我正确的 VB 脚本来执行此连续表单活动,而不是按表单更新整个表格。
- 如何创建一个类似于 access 2003 的表单,在该表单上我可以创建仅允许用户登录的交换机,以及仅针对管理员对数据库的特殊登录访问,因此它会像一个应用程序。(我使用 Access 2010 .accdb 文件)
很抱歉这篇长文,只是想确保一切都清楚,任何答案将不胜感激。先感谢您