Excel VBA高效办公应用-第十三章-工资条与工资查询-Part2 (工资条查询)
来源:互联网 发布:js点击调用函数 编辑:程序博客网 时间:2024/04/25 08:32
Excel竟然可以做出一个像模像样的查询系统,见识了。
Option ExplicitPrivate Sub CommandButton1_Click()On Error GoTo Doerror '由于输入非法员工号码会引起错误 Sid = TextBox1.Text '获得员工ID号 Sheets("销售部员工信息表").Activate '激活员工信息表 '在员工信息表中查找对应员工ID号码的姓名 Sname = Application.WorksheetFunction.VLookup(Val(Sid), Range("A1:F1000"), 2, False) '在员工信息表中查找对应员工ID号码的学历 Sxueli = Application.WorksheetFunction.VLookup(Val(Sid), Range("A1:F1000"), 5, False) Sheets("1月出勤加班统计表").Activate '激活1月出勤加班统计表 '在1月出勤加班统计表中查找对应员工ID号码的迟到次数 Icidao = Application.WorksheetFunction.VLookup(Val(Sid), Range("A1:F1000"), 4, False) '在1月出勤加班统计表中查找对应员工ID号码的旷工次数 Ikuang = Application.WorksheetFunction.VLookup(Val(Sid), Range("A1:F1000"), 5, False) '在1月出勤加班统计表中查找对应员工ID号码的加班次数 Ijiaban = Application.WorksheetFunction.VLookup(Val(Sid), Range("A1:F1000"), 6, False) Sheets("1月销售业绩表").Activate '激活1月销售业绩表 '在1月销售业绩表中查找对应员工ID号码的销售台数 Itai = Application.WorksheetFunction.VLookup(Val(Sid), Range("A1:F1000"), 4, False) UserForm1.Hide '隐藏UserForm1 UserForm2.Show '激活UserForm2 Exit SubDoerror: Sheets("工资查询表").Activate MsgBox "销售部没有这个员工号码"End Sub
Option Explicit'IMoneyXueli表示学历对应的金钱,其它同理Dim IMoneyXueli As Integer, IMoneyCidao As Integer, IMoneykuang As IntegerDim IMoneyJiaban As Integer, IMoneyTai As Integer, IMoneyJieguo As IntegerSub SubXueli()Select Case Sxueli '判断学历 Case "专科以下" IMoneyXueli = 0 '专科生以下不加钱 '在学历标签上显示其学历及加的钱 Lbxueli.Caption = Sxueli + " +" + Str(IMoneyXueli) + "元" Case "专科" IMoneyXueli = 400 '专科生加400元 '在学历标签上显示其学历及加的钱 Lbxueli.Caption = Sxueli + " +" + Str(IMoneyXueli) + "元" Case "本科" IMoneyXueli = 800 '本科生加800元 '在学历标签上显示其学历及加的钱 Lbxueli.Caption = Sxueli + " +" + Str(IMoneyXueli) + "元" Case "硕士" IMoneyXueli = 1200 '专科生加1200元 '在学历标签上显示其学历及加的钱 Lbxueli.Caption = Sxueli + " +" + Str(IMoneyXueli) + "元" Case "博士" IMoneyXueli = 1600 '专科生加1600元 '在学历标签上显示其学历及加的钱 Lbxueli.Caption = Sxueli + " +" + Str(IMoneyXueli) + "元"End SelectEnd SubPrivate Sub CommandButton1_Click()'单击确定则退出窗体UserForm2.HideEnd SubPrivate Sub CommandButton2_Click()UserForm2.Hide '退出当前窗体UserForm1.Show '继续查询End SubPrivate Sub UserForm_Activate()'激活"工资查询表"Sheets("工资查询表").Activate'不能直接在Text函数里将格式"000"换成"MT01001"LbId.Caption = "MT01" + Application.WorksheetFunction.Text(Val(Sid), "000") '取得员工号码SubXueli '计算与学历相关的金钱Lbname.Caption = Sname '取得员工姓名 '计算迟到扣款项 IMoneyCidao = Icidao * 100 '迟到一次扣100 '在迟到标签上显示其迟到所扣的钱 Lbcidao.Caption = Str(Icidao) + " -" + Str(IMoneyCidao) + "元" '计算旷工所扣的钱,旷一次课减去300元 IMoneykuang = Ikuang * 300 '在旷工标签上显示其旷工所扣的钱 Lbkuang.Caption = Str(Ikuang) + " -" + Str(IMoneykuang) + "元" '计算加班费,加一次班加200元 IMoneyJiaban = Ijiaban * 200 '在加班标签上显示其加班费 Lbjiaban.Caption = Str(Ijiaban) + " +" + Str(IMoneyJiaban) + "元" '计算销售提成的钱数 IMoneyTai = Itai * 30 '在销售提成标签上显示其提成收入 Lbtai.Caption = Str(Itai) + " +" + Str(IMoneyTai) + "元" '计算最后工资收入,2000是基本工资,400是基本奖金,600是水电餐费及三险一金 IMoneyJieguo = 2000 + IMoneyXueli + 400 - IMoneyCidao - IMoneykuang + _ IMoneyJiaban + IMoneyTai - 600 '在最后工资标签上显示其应发工资 Lbjieguo.Caption = Str(IMoneyJieguo) + "元"End Sub
Option ExplicitPrivate Sub Worksheet_SelectionChange(ByVal Target As Range)'定义触发事件调出查询窗口UserForm1.ShowEnd Sub
阅读全文
0 0
- Excel VBA高效办公应用-第十三章-工资条与工资查询-Part2 (工资条查询)
- Excel VBA高效办公应用-第十三章-工资条与工资查询-Part1 (制作工资条)
- Excel VBA高效办公应用-第二章-Excel VBA编辑基础-Part2(VBA的数据类型)
- Excel VBA高效办公应用-第六章-客户资料管理-Part2 (简单查询功能的VBA实现及记录单功能)
- Excel VBA高效办公应用-第七章-VBA财务报表分析-Part2 (资产负债表分析)
- Excel VBA高效办公应用-第十章-高效处理学员资料-Part2 (考勤记录表)
- Excel VBA高效办公应用-第九章-VBA文秘办公技巧-Part2(查找同名同姓的员工)
- Excel VBA高效办公应用-第五章-销售数据的处理与分析-Part2(多条件筛选及判定)
- Excel VBA高效办公应用-第八章-商品销售决策与分析-Part2 (商品分期付款决策)
- Excel VBA高效办公应用-第十二章-工资表的录入与工资表的建立-Part2 (建立工资表)
- Excel VBA高效办公应用-第十一章-教师员工数据管理-Part2 (课表助手小程序)
- Excel工资条
- 工资条
- Excel VBA高效办公应用-第二章-Excel VBA编辑基础-Part4(VBA控制语句)
- 【VBA研究】生成工资条
- Excel VBA高效办公应用-第十五章-VBA在生产预测与经营分析中的应用
- 工资条打印 Excel操作
- Excel玩转工资条
- 树莓派-硬件运行监测-vcgencmd
- hiho一下 第155周 任务分配
- 进一步理解!linux下bus,device,driver三者关系
- [5] Vim 工具
- 黑白卡片-Java-牛客模拟四
- Excel VBA高效办公应用-第十三章-工资条与工资查询-Part2 (工资条查询)
- 动态重定位执行过程
- 第七课,字符产生成器 StringBuilder
- MFC 之 GDI
- 机器学习中的数学(5)-强大的矩阵奇异值分解(SVD)及其应用
- 端口号
- jquery中innerWidth(),outerWidth(),outerWidth(true)和width()的区别
- 第十二课,课后练习
- jdk的安装及环境变量的配置