职工录入表用php 全局变量量

可以在SQL Server 2005中定义全局的表变量不?
[问题点数:20分,结帖人lishirui]
可以在SQL Server 2005中定义全局的表变量不?
[问题点数:20分,结帖人lishirui]
不显示删除回复
显示所有回复
显示星级回复
显示得分回复
只显示楼主
2011年8月 总版技术专家分月排行榜第二2011年7月 总版技术专家分月排行榜第二
2012年7月 荣获微软MVP称号
2013年4月 MS-SQL Server大版内专家分月排行榜第二
2012年5月 MS-SQL Server大版内专家分月排行榜第三
2013年4月 MS-SQL Server大版内专家分月排行榜第二
2012年5月 MS-SQL Server大版内专家分月排行榜第三
2011年 总版技术专家分年内排行榜第四2010年 总版技术专家分年内排行榜第九2009年 总版技术专家分年内排行榜第八
2011年10月 总版技术专家分月排行榜第一
2013年4月 MS-SQL Server大版内专家分月排行榜第二
2012年5月 MS-SQL Server大版内专家分月排行榜第三
2015年4月优秀版主2014年11月论坛优秀版主
2016年4月 荣获微软MVP称号2015年4月 荣获微软MVP称号2014年4月 荣获微软MVP称号2013年4月 荣获微软MVP称号2009年1月 荣获微软MVP称号2012年4月 荣获微软MVP称号2011年4月 荣获微软MVP称号2010年4月 荣获微软MVP称号
2011年12月 总版技术专家分月排行榜第三2011年9月 总版技术专家分月排行榜第三
2011年6月 MS-SQL Server大版内专家分月排行榜第一
本帖子已过去太久远了,不再提供回复功能。哈希表能代替全局变量吗_魔兽地图编辑器吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0可签7级以上的吧50个
本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:35,845贴子:
哈希表能代替全局变量吗
一开始以为是很复杂的东西,不过从描述上看似乎是很便利很细致的东西呢哈希表用一下就能自然学会吗,有什么需要注意的吗如果有攻略的话求一下链接& &
【写在前面】 本文不过...
你是否喜欢少女时代阿狸...
由梁旋和张春联合导演...
台湾电影金马奖,是华...
听说菲律宾说南海是他们...
你只需要记住,我不叫叶...
【ID】流浪诗人er 【地...
他们才是最可爱的人儿 ...
毋庸置疑,每部剧中都有...
最近因为舞蹈课越来越多...
个人介绍:大家好,“软...
【ID】绾青丝hsc 【地区...
能,很好用
为什么要代替全局变量
看个人需要
看个人看效率看繁琐程度。。。
额……菜鸟飘过……哈希表有什么用?怎么用?
哈希表的主要用途是给句柄类型绑定变量的,一般来说如果没有动态注册触发器或者计时器的话还是用全局变量比较好。嗯……其实应该叫散列的。
刚学哈希的时候什么东西都用哈希 全局变量几乎不用现在已经回归了全局传参了 哈希主要用在计时器相关事件上
贴吧热议榜
使用签名档&&
保存至快速回贴查看: 2594|回复: 5
定义变量问题
阅读权限50
在线时间 小时
大家好,我下面的几个控件中多处使用 变量 Sheets(&总数&)
我想把  Sheets(&总数&)& &   指定给 sth
写成这样 Set sth = Sheets(&数据源&)
让这个 sth 在所有的控件本窗体中的所有控件中都能使用,以至于我修改工作表名称时,只需要修改一个,不用每一处就修改。
代码如下:
Private Sub 返回行按钮_Click()
& & Dim wsrg As Range
& & Dim hang%, d As Object
& & On Error GoTo 判断
& & Set d = CreateObject(&scripting.dictionary&) '建立字典
& & If 姓名.Caption && && Then d(姓名.Caption & 科室.Caption & 出生日期.Caption) = &&
& & '如果姓名不是空值(主要是防止出错才加了这个判断),将姓名+科室+出生日期连在一起作为关键字写入字典(假设姓名相同,同在一个科室,也不影响结果)
& & arr = Sheets(&总数&).Range(&a1&).CurrentRegion '将数据源赋值给数组
& & For i = 2 To UBound(arr) '遍历数组
& && &&&If d.exists(arr(i, 2) & arr(i, 3) & arr(i, 12)) Then hang = i
& && &&&'用数组中姓名+科室+出生日期连在一起作为关键字来判断是否在字典中存在,一旦存在,那么这行数据所在的数组横坐标就是数据库中所在行的位置
& & Sheets(&总数&).Activate& & '激活总数工作表
& & ActiveWindow.ScrollRow = hang& & '选中的当前人员所在行滚动至工作表最顶端
& & Rows(hang).Select& & '选中当前人员所在的行
& & '录入指定的工作表代码
& & With Sheets(&人员提取&)& & '查询到的数据录入到指定工作表
& && &&&Set wsrg = .[c:c].Find(Cells(hang, &c&).Value) '把“总数”表中找到的姓名拿到录入表中查找,看是否已经录入(前面B:B是表示数据源姓名所在列,后面B表示录入表中的姓名所在列)
& && &&&If Not wsrg Is Nothing Then MsgBox &录入表中已有当前信息&: Exit Sub& & '判断录入的工作表中是否有当前选择准备录入的人员,如果有就退出(若不判断录入表中是否有当前选择的人员,就直接注释掉此句即可)
& && &&&If MsgBox(&是否录入当前查询信息!&, vbYesNo + vbInformation, &温馨提示&) = vbNo Then Exit Sub& & '询问是否录入当前查询到的信息(也可以不要此句,直接录入)
& && &&&R = .[B65536].End(xlUp).Row + 1& & '前面的B65536表示判断B列,End(xlUp).Row表示最后有数据的列,+1表示加一行
& && &&&'粘贴数据源的所有数据,与下面代码切换
& && &&&'.Range(&B& & R & &:W& & R) = Range(&B& & hang & &:w& & hang).Value'前面的B:W是录入表输入位置,后面B:W是引用工作表中的引用列
& && &&&'粘贴数据源中指定内容到录入表中
& && &&&.Range(&B& & R) = Range(&B& & hang).Value& & '前面的B是录入表输入对应位置,后面B是引用工作表中数据对应列,以下同理
& && &&&.Range(&c& & R) = Range(&c& & hang).Value
& && &&&.Range(&D& & R) = Range(&Q& & hang).Value
& && &&&.Range(&E& & R) = Range(&M& & hang).Value
& && &&&.Range(&H& & R) = Range(&L& & hang).Value
& && &&&.Range(&M& & R) = Me.添加项目.Text& & '新添加项目,可扩展使用到采购计划单中的数量录入,把新添加的项目录入到录入工作表中对应的M列
& && &&&.Range(&B& & R & &:M& & R).Borders.LineStyle = 1& & '为最后一行添加表格边框(列范围为B列到M列)
& && &&&.Range(&B& & R & &:M& & R).Font.Name = &黑体&& & '字体
& && &&&.Range(&B& & R & &:M& & R).HorizontalAlignment = 3& & '水平居中
& && &&&.Range(&B& & R & &:M& & R).Font.ColorIndex = 3& & '字体颜色红色
& && &&&.Range(&B& & R & &:M& & R).VerticalAlignment = xlCenter& & '垂直居中
& && &&&Sheets(&录入表&).Activate& & '录入后激活录入工作表
& && &&&MsgBox &查询信息已成功录入&& & '提示录入信息成功
& && &&&简码输入框.SetFocus& & '上条信息输入成功后,光标继续返回简码输入框可继续查询输入
& && &&&Me.简码输入框.Text = &&& & '接上步操作,光标返回到拼音简码处后,消除简码输入框中的内容,重新输入(其中的Me是表示本窗体中的)
& && &&&Me.添加项目.Text = &&& & '消除添加项目中的内容,重新输入
& & End With
& & '录入指定的工作表代码
& & 'Unload Me'关闭当前的窗体,这里不关闭不当前窗体,因为上面设置的是输入成功后,光标继续返回到拼音简码处可继续输入
& & Exit Sub
& & MsgBox &没有选择查询信息!&
Private Sub 结果列表框_Click()
& & Dim wsrg As Range, arr, brr()
& & Dim hang%, i%
& & With 结果列表框
& && &&&姓名.Caption = .Value
& && &&&arr = Sheets(&总数&).Range(&a1&).CurrentRegion '区域赋值给数组
& && &&&ReDim brr(1 To .ListCount) '重新定义数组brr上下标
& && &&&For i = 1 To UBound(arr) '遍历数组arr
& && && && &
& && && && &If arr(i, 3) = .Value Then '如果数组中的姓名=listbox选中的姓名
& && && && && && && &'3指数据源中姓名所在的第几列
& && && && && & n = n + 1
& && && && && & brr(n) = i '将此姓名对应的行位置写入数组,最终得到所有跟选中姓名相同的姓名的行位置
& && && && &End If
& && &&&Next
& && &&&X = .ListIndex '选中的姓名在listbox中的位置赋值给x
& && &&&For i = 0 To X '此循环是确定选中的姓名在listbox中相同的姓名中排名第几,那么这个m和brr数组中对应的位置的姓名是同一个人
& && && && &If .List(i) = .Value Then
& && && && && & m = m + 1
& && && && &End If
& && &&&Next
& & End With
& & hang = brr(m)
& & 科室.Caption = Sheets(&总数&).Cells(hang, &D&).Value& & '其中总数表示查询数据源工作表名,D是科室文本框对应数据源工作表中数据所在的列以下同理
& & 性别.Caption = Sheets(&总数&).Cells(hang, &Q&).Value
& & 受聘专业.Caption = Sheets(&总数&).Cells(hang, &J&).Value
& & 职务.Caption = Sheets(&总数&).Cells(hang, &O&).Value
& & 是否干部.Caption = Sheets(&总数&).Cells(hang, &S&).Value
& & 最高级别.Caption = Sheets(&总数&).Cells(hang, &F&).Value
& & 技术职称.Caption = Sheets(&总数&).Cells(hang, &G&).Value
& & 资格证书.Caption = Sheets(&总数&).Cells(hang, &T&).Value
& & 技术等级.Caption = Sheets(&总数&).Cells(hang, &W&).Value
& & 身份.Caption = Sheets(&总数&).Cells(hang, &E&).Value
& & 年龄.Caption = Sheets(&总数&).Cells(hang, &M&).Value
& & 出生日期.Caption = Format(Sheets(&总数&).Cells(hang, &L&).Value, &YYYY-MM-DD&)& & '出生年月所在单元格及窗体中日期显示的格式
& & 工作时间.Caption = Format(Sheets(&总数&).Cells(hang, &N&).Value, &YYYY-MM-DD&)
& & 数据总和.Caption = Val(Sheets(&总数&).Cells(hang, &I&)) + Val(Sheets(&总数&).Cells(hang, &M&)) + Val(Sheets(&总数&).Cells(hang, &P&).Value)& & '计算几个数据的和,可判断排除空值单元格
Private Sub 简码输入框_Change()
& & Dim LastRow%
& & Dim myrg As Range
& & 简码输入框.Text = UCase(简码输入框.Text)
& & 结果列表框.Clear
& & If 简码输入框.Text = && Then
& && &&&结果数字框 = &没有输入查询信息&
& && &&&Exit Sub
& & End If
& & LastRow = Sheets(&总数&).Range(&B65536&).End(xlUp).Row& & '其中总数表示查询数据源工作表名称,B65536中的B表示姓名所在的列
& & For Each myrg In Sheets(&总数&).Range(&ax2:ax& & CStr(LastRow))& & '其中总数表示查询数据源工作表名称
& && && && && && && && && && && && && && &'ax2:ax表示拼音简码所在区域
& && &&&If Right(简码输入框.Text, 1) = &0& Then
& && && && &If myrg = Left(简码输入框.Text, Len(简码输入框.Text)) Then 结果列表框.AddItem Sheets(&总数&).Cells(myrg.Row, &c&).Value
& && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && & 'c指数据源中姓名所在列
& && &&&Else
& && && && &If myrg Like &*& & 简码输入框.Text & &*& Then 结果列表框.AddItem Sheets(&总数&).Cells(myrg.Row, &c&).Value
& && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && &'c指数据源中姓名所在列
& && &&&End If
& & If 结果列表框.ListCount && 0 Then
& && &&&结果数字框.Caption = 结果列表框.ListCount
& && &&&结果数字框.Caption = &没有查询到符合条件信息&
& & End If
Private Sub 简码输入框_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
& & If KeyCode = vbKeyDown Then
& && &&&If 结果列表框.ListCount & 0 Then
& && && && &结果列表框.ListIndex = 0
& && && && &结果列表框.SetFocus
& && &&&End If
& & End If
Private Sub 结果列表框_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)& & '当光标在结果列表框上时
& & If KeyCode = 13 Then& & '13表示按回车键
& && &&&添加项目.SetFocus& & '返回这个按钮
& & End If
Private Sub 添加项目_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)& & '当光标在添加项目上时
& & If KeyCode = 13 Then& & '13表示按回车键
& && &&&返回行按钮.SetFocus& & '返回这个按钮
& & End If
'窗体信息查询系统结束
附件如下,请大家帮帮忙,谢谢大家了!!!
(46.02 KB, 下载次数: 27)
13:31 上传
点击文件名下载附件
阅读权限50
在线时间 小时
kosp 发表于
代码太多,没看,你的意思是不是想让这个sth在一个过程中得到值,过程结束后,这个值仍然存在,便于其他过程 ...
就是全局变量
阅读权限50
在线时间 小时
蓝桥玄霜 发表于
全局变量要放在模块中,另外需要把所有的Sheets(&总数&)都替换为sth
请见附件。
谢谢兰老师,感谢!!!
阅读权限20
在线时间 小时
yjwdjfqb 发表于
就是全局变量
那你是啥意思?想问怎么定义全局变量吗?
阅读权限100
在线时间 小时
全局变量要放在模块中,另外需要把所有的Sheets(&总数&)都替换为sth
请见附件。
14:47 上传
点击文件名下载附件
33.14 KB, 下载次数: 64
阅读权限20
在线时间 小时
代码太多,没看,你的意思是不是想让这个sth在一个过程中得到值,过程结束后,这个值仍然存在,便于其他过程调用?
如果是这意思,把sth声明为全局变量
玩命加载中,请稍候
玩命加载中,请稍候
Powered by
本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任! & & 本站特聘法律顾问:徐怀玉律师 李志群律师VFP中的全局变量是应用于单个表单还是整个项目?如何声明应用于整个项目的全局变量?_百度知道
VFP中的全局变量是应用于单个表单还是整个项目?如何声明应用于整个项目的全局变量?
提问者采纳
全局变量是应用于整个项目的声明用于整个项目的全局变量,在项目的主程序中声明PUBLIC AAAA=&& && 全局变量AA为字符型
提问者评价
其他类似问题
为您推荐:
全局变量的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁}

我要回帖

更多关于 python 全局变量 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信