仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1349|回复: 10
打印 上一主题 下一主题

[学习教程] MYSQL网页编程之access老手来看:怎样反复上一笔记录?...

[复制链接]
兰色精灵 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-16 22:46:23 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
需要处理因此带来的更多的支持工作,这有可能会带来成本上的提高。在这种情况下,一些MySQL学习教程发行商可能倾向于选择别的开源数据库,例如遵循BSD授权的PostgreSQL。access|反复
老手来看:怎样反复上一笔记录?



成绩:

怎样反复上一笔记录?


有一个窗体,下面有多个文本框和组合框,由于目次这笔材料与下一笔材料年夜部门都是一样的,能不克不及使用COPY功效把上一笔的材料复制到下一笔的绝对应的文本框和组合框内.最好是做成按钮式,即一个复制按钮和一个粘贴按钮。





办法一:

良多软件内里都有这个功效啊?


道理十分复杂。

只需增加一个COMMANDBUTTON就能够了。

增加纪录的代码信任人人都晓得了。

PrivateSubCommand16_Click()
OnErrorGoToErr_Command16_Click



DoCmd.GoToRecord,,acNewRec

Exit_Command16_Click:
ExitSub

Err_Command16_Click:
MsgBoxErr.Description
ResumeExit_Command16_Click

EndSub


我们变动一下便可,好比说如今有一个文本框,固然了,实践情形你能够再加代码,大概爽性用CONTROLS轮回来做。


PrivateSubCommand16_Click()
OnErrorGoToErr_Command16_Click


dimstrTempasstring
strTemp=TextBox1.value
道理很复杂,先将控件值赋值给变量
然后在增加纪录后再将该变量值赋值给控件
DoCmd.GoToRecord,,acNewRec

TextBox1.value=strTemp
Exit_Command16_Click:
ExitSub

Err_Command16_Click:
MsgBoxErr.Description
ResumeExit_Command16_Click

EndSub


别的Ctrl+(单引号)能够复制上一笔记录统一字段内容。





办法二:

用controls轮回的代码以下:
PrivateSubAutoWriteRecord()
自顺应
OnErrorGoToErr_AutoWriteRecord
DimD创立一个变量
SetD=CreateObject("Scripting.Dictionary")

DimiAsLong
Fori=0ToMe.Controls.Count-1
IfMe.Controls(i).ControlType=acTextBox_
OrMe.Controls(i).ControlType=acComboBox_
OrMe.Controls(i).ControlType=acListBox_
OrMe.Controls(i).ControlType=acCheckBox_
OrMe.Controls(i).ControlType=acOptionButtonThen
IfMe.Controls(i).Name"编号"Then
主动编号字段不成写,以是除外,能够用onerrorresumenext疏忽
D.AddMe.Controls(i).Name,Me.Controls(i).Value
EndIf
EndIf
Nexti
道理很复杂,先将控件值赋值给变量
然后在增加纪录后再将该变量值赋值给控件
DoCmd.GoToRecord,,acNewRec


DimK
K=D.keys

Fori=0ToD.Count-1
Me.Controls(K(i)).Value=D(K(i))
Nexti

SetD=Nothing

Exit_AutoWriteRecord:
ExitSub

Err_AutoWriteRecord:
MsgBoxErr.Description
ResumeExit_AutoWriteRecord

EndSub




PrivateSubAutoWriteRecord_1(strControlNameAsString)
野生界说控件名
OnErrorGoToErr_AutoWriteRecord
DimD创立一个变量
SetD=CreateObject("Scripting.Dictionary")

DimstrSName()AsString
strSName=Split(strControlName,";")

DimiAsLong
Fori=0ToUBound(strSName)-1
D.AddstrSName(i),Me.Controls(strSName(i)).Value
Nexti
道理很复杂,先将控件值赋值给变量
然后在增加纪录后再将该变量值赋值给控件
DoCmd.GoToRecord,,acNewRec


Fori=0ToUBound(strSName)-1
Me.Controls(strSName(i)).Value=D(strSName(i))
Nexti
SetD=Nothing

Exit_AutoWriteRecord:
ExitSub

Err_AutoWriteRecord:
MsgBoxErr.Description
ResumeExit_AutoWriteRecord

EndSub




测试:
PrivateSubCommand16_Click()
AutoWriteRecord
AutoWriteRecord_1"字段1;字段2;字段4;"
EndSub












http://www.access911.net站长保藏
这些过程被存储和运行在数据库服务器上,以减少在客户端的处理过程,从而最大限度地提高了处理能力,因为通常情况下数据库服务器会运行地更快。存储过程并不是MySQL独有的功能,但是这个最近新增加的功能使得这个数据库比以前更具吸引力了。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-5-17 03:47

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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