Excel中把指定内容筛选出,并复制到指定的工作簿中,并保存,VBA代码高手请进,有高分感谢

各位老师:
我有一个Excel表格,名称为《A学校总工作簿》.我想根据它的 Sheet1 表格中 【H列】 的部分内容进行分别筛选,并将每次的筛选后的部分内容(是部分列,不是全部内容)分别复制到对应的工作簿中,并保存。(复制不是在同一工作簿,是另外的五个工作簿)
在复制时如果 这些需要更新的列中 如果原来有数据,将原有的数据刷新(使用新数据)。
H列会有五个名称,分别为 一年级、二年级、三年级、四年级、五年级。
一共有六个工作簿.名称分别为《A学校总工作簿》、《B一年级工作簿》、《C二年级工作簿》、《D三年级工作簿》、《E四年级工作簿》、《F五年级工作簿》。(筛选H列后【一年级】的内容复制到《B一年级工作簿》,其他类似)这六个工作簿存在D盘同一文件夹中.
所有工作簿的内容都从第三行开始〈第一行和第二行为表头〉。
我只要将筛选出的A列、C列、D列、F列、H列、I列、K列 的内容复制新的工作簿中,其它 列的内容 不要(不是筛选后全部内容)。在复制过程中不能影响原来行距、列距,只复制内容,其他的表格设置都不能变。不影响其他单元格内的数据。
在复制到其他工作簿的时候,这些工作簿可能是打开的,也可能是关闭的,如果是打开的请先保存数据,在更新数据。
如果需要附件,请到http://club.excelhome.net/forum.php?mod=viewthread&tid=1160756&extra=下载附件需要账号ljd4895密码是mf4895

问题解决后还有高分感谢哦

有一个重要问题要弄清楚,当筛选出来的数据传到另外工作簿时,如果已有数据就更新,判别是否有数据的关键字段是“学生编码”还是“姓名”。从你说的意思看,不复制姓名列,关键字应该是姓名,但姓名有可能重名,如果遇到相同姓名该怎么办?编码不会重复,为关键字才合理。追问

我的学生编码是唯一的,其他的都可能重复。还有这是模拟工作簿

追答

按你的要求完成了

使用方法,点击 H2 单元格,出现下拉箭头,从中选择“年级”显示全部,选择各个年级则进行筛选并将数据更新到各年级工作簿。

有问题再追问

温馨提示:内容为网友见解,仅供参考
无其他回答

Excel中把指定内容筛选出,并复制到指定的工作簿中,并保存,VBA代码高手请...
有一个重要问题要弄清楚,当筛选出来的数据传到另外工作簿时,如果已有数据就更新,判别是否有数据的关键字段是“学生编码”还是“姓名”。从你说的意思看,不复制姓名列,关键字应该是姓名,但姓名有可能重名,如果遇到相同姓名该怎么办?编码不会重复,为关键字才合理。

Excel中把指定内容筛选出,并复制到指定的工作簿中,并保存,VBA代码高手请...
用查找替换功能将公式变成半绝对引用,设置密码加锁,然后再一年级工作簿建立一个一年级工作表,建立查找公式组,这样,就完成了一年级的建立,当然,公式变种方式非常非常多,大概就这个思路,但你想在打开状态提示更新信息到时需要VBA,例如你可以写一个重新计算所有公式的一个VBA代码,然后再在工作簿添加...

Excel表格如何跨工作簿寻找数据并刷新现有数据。高手请进,问题采纳后另...
1、编写相对复杂,不易维护;2、数据量较大时,执行缓慢;3、出现错误时,难以及时发现,并且,操作出现失误时,难以撤销。鉴于VBA代码的以上几点缺陷,建议你使用灵活简便、易于维护和更新的公式和函数。并且,如果你能将《学生总工作簿》之外的其它5个工作簿都的内容都统一在《学生总工作簿》中,使原...

excel如何用VBA将工作薄一的数据导至另一个工作薄(高手请进)
"二", "三", "四", "五", "六", "七", "八") For j = 1 To 4 '列1~4 For i = 1 To 4 '工作表1~4 '工作簿一的表i(1-4)的列2j(2、4、6、8)复制 到 工作簿二表4+j(5-8)的列i+1(2-5) Workbooks("一").Sheets(No(i)).Columns(j * 2)...

excel表格批处理提取最大数,高手请进,高分求助,粘贴党滚?
方法一:1、复制A列到C列,点“数据”,选C列,重复项,删除重复项,如图:2.选当前选定区域,删除重复项,如图:3.直接选删除重复项,如图:4.结果如图:5.D1输入公式:=IF(C1="","","有 "&COUNTIF(A:A,C1)&" 轨")或 =IF(C1="","","有 "&LOOKUP(C1,A:A,B:B)&" 轨")然...

EXCEL,如何让满足符合的条件合并到指定单元格?有图,高手请进!
D2=B2&IF(ISERROR(VLOOKUP(C2,C3:D12,2,0)),"",","&VLOOKUP(C2,C3:D12,2,0))向下复制 G1=MIN(A2:A12)设置为时间格式 G2=MAX(A2:A12)设置为时间格式 G3=VLOOKUP(F3,$C$2:$D$12,2,0)向下复制

excel电子表格 宏 高手请进,高分追加
原数据表 sheet1 新数据表 sheet2 打开原数据表,在表名上点右键,选“查看代码”,打开代码窗口,将上面的代码复制入其中,并根据实际情况,将代码内的表名改为实际表名(有注释)然后,按 F5 键运行程序 --- 其他关于结果的格式等问题,请Hi我,或留消息,详细解答 ...

EXCEL如何将一个工作簿通过筛选分解成多个工作簿,VBA代码高手请进
你都在EXCEL HOME了 想必你也不是庸手。试试他们的易用宝吧。http:\/\/yyb.excelhome.net\/ 我觉的还不错。另外如果我做你这个的话。 按你的规则获取对应的范围的数据 ,然后插入到新表。

EXCEL高手请进,需要VBA编程,筛选重复数据并显示统计数量以及显示下一行...
假设两个表都是从A列开始的,用下面代码可以实现 Sub cz()Sheets("sheet2").Select Range("a3:a100").ClearContents Set sh1 = Sheets("sheet1")x = sh1.[a65536].End(xlUp).Row n = 3 For i = 2 To x With sh1 If .Cells(i, 1) = [b1] Then Cells(n, 1) = .Cells(i,...

如果用VBA在excel表里实现点击添加就新建一个工作薄并将第一个工作薄...
新建一个工作薄按钮代码:Sub 按钮1_Click()Dim a Sheets(1).Copy After:=Sheets(1)a = InputBox("请输入VIP的编号:", "VIP名称", "VIP_")Sheets(2).Name = a Sheets(2).Select End Sub 查询按钮代码:Sub 按钮2_Click()Dim a, i, ok a = InputBox("请输入你要查询的电话号码:...

相似回答