ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 5957|回复: 26

[分享] Vlookup 不同工作簿的VBA代码如何写?

[复制链接]

TA的精华主题

TA的得分主题

发表于 2010-4-20 23:07 | 显示全部楼层 |阅读模式
我做了一个 分科登分及合成总分模板 ,是用Vlookup 函数实现的,因为科目多,有9科,占用空间太大,想看看有没有办法可以减少容量。
以下的分科登分及合成总分模板 的说明:
1、在11个表格,其中9个为科目的表格(分别为语、数、英、政、史、地、物、化、生),另外两个一个是原始登分表,一个是合成登分表。
2、为避免登分时有人作过排序操作导致出错,除原始登分表没有加保护外,其它表格(输入分数表格除外)都有加保护(密码为geryjun)。
3、9科表格和合成登分表的数据都是来源于原始登分表,所以每次使用时,只要修改原始登分表并对其它表格做自动更新就可以了。
4、因为是使用函数和公式,所以文件有点大。如果有哪位高手可以改成VBA的,请给予帮助,在此谢谢了。
5、这是我第一次发表我的模板,欢迎各位友友们提出宝贵建议或作出修改。
6、此表主要适用于高一或要考九科的年级,如果是其它年级(如只考4科或5科的)可以做相应的修改就可以了。
附件已经传到此页了,我就不再上传到这里,麻烦各位点击去下载。

我的想法是这样:
1、通过 原始登分表  自动生成 其他各科的分科表格(有写保护,但登分的G列没有保护)。
2、当各科成绩登分后,在原始登分表格里 可以自动生成合成登分表。
3、在合成登分表中可以使用VBA代码,一键把各科的成绩Vlookup在表格中,显示的是数值而不是公式。

通过 lorvoo 的热心帮助,现在全部功能都已经实现。附件在22楼。
谢谢。


[ 本帖最后由 geryjun 于 2010-4-29 18:12 编辑 ]

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-4-21 12:42 | 显示全部楼层
我想如果通过几个软件还是可以达到的,可是如果合在一个软件里的话,不知难不难。

TA的精华主题

TA的得分主题

发表于 2010-4-21 13:08 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
个人意见:
不用函数,不用宏,也不要分科登记簿,就一个合成登记簿可以了,要那么多表格干吗?
(若非要分科:将合成登记簿复制9份,删除不需要的科目,就行了)

一张表,一目了然。如果您要进行数据分析,可以再创建一个数据透视表,相当的方便。

TA的精华主题

TA的得分主题

发表于 2010-4-21 13:13 | 显示全部楼层
合成登分表与原始表是一样的嘛,干吗还要弄一个?
可以用原始登分表生成其它表的。等我做完发上来。

TA的精华主题

TA的得分主题

发表于 2010-4-21 15:24 | 显示全部楼层
LZ看看这个怎么样?
Score Record Table.rar (52.48 KB, 下载次数: 126)
(由于我的系统是英文的,不支持中文,所以只能出英文产品)

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-4-21 18:46 | 显示全部楼层

回复 3楼 smhf_6 的帖子

呵呵,这你就有所不知啦。如果一个级有近2000人,9个科目,一起登分的话,花时间很多,如果分为9个科,那就可以节省8/9的时间。

另外,我现在的表格就是分成了9个科目呀。

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-4-21 18:50 | 显示全部楼层

回复 5楼 lorvoo 的帖子

不错,这就是我想要的效果。谢谢了。
经你提醒,原来可以少做一个表格。
我当初的想法是这样,原始表格是会变化的,照我原来的思路,是要另外做一个读取原始数据的合成表格的,只有这样,更新了原始表格 才不会对其他表格内容 产生变化。

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-4-22 00:13 | 显示全部楼层
看了一些贴,都提到Vlookup  在数据多的时候, 运行速度会很慢,
如果最后能用VBA 代替 vlookup 自动生成就更好了。
希望有高手改进一下。

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-4-22 13:12 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助

回复 5楼 lorvoo 的帖子

你好,请问能否点击增加 “全部”到按钮 Creat Table,创建的工作表格以科目命名,并保存。
这样的话,我就不用一个一个科目创建再一个一个保存了。

此外,能否在导出的合成文档中 科目列里 增加Vlookup代码?

TA的精华主题

TA的得分主题

发表于 2010-4-22 14:27 | 显示全部楼层

回复 1楼 geryjun 的帖子

想法:可以将一个文件放在学校的FTP公共文件位置,并将该文件设置属性为共享共同编辑,启用冲突日志。每科的教师分头录入分数即可。
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-5-20 20:59 , Processed in 0.042005 second(s), 13 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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