怎样把excel中姓名对应的成绩导入到一张相同姓名excel表中?

网友解答: 这个问题用VBA就可以实现,三步就好!第一步:准备数据如何把表1到表5中光头强的成绩,统一提取到汇总表中!在原有表格基础上,新建两个表,如下图:第二步:插入控件,在控件指定代

网友解答:

这个问题用VBA就可以实现,三步就好!第一步:准备数据

如何把表1到表5中光头强的成绩,统一提取到汇总表中!

在原有表格基础上,新建两个表,如下图:

第二步:插入控件,在控件指定代码,如图:

1、ALT+F11,调出VBA代码窗口,

2、插入一个模块

3、复制以下代码到这个模块内。

Sub 成绩提取()

Dim rng As Range

Dim B As Integer

Dim c As Integer

Dim j

j = Sheets("成绩汇总表").Cells(5, 9)

Sheets("成绩汇总表").Select

Columns("A:G").Select

Selection.ClearContents

Sheets("data").Select

Columns("A:D").Select

Selection.Delete Shift:=xlToLeft

Worksheets(1).Select

Rows("1:1").Select

Range(Selection, Selection.End(xlDown)).Select

Selection.Copy

Sheets("data").Select

Set rng = Sheets("data").Range("A65536").End(xlUp)

B = rng.Row

Sheets("data").Cells(B, 1).Select

ActiveSheet.Paste

c = Worksheets.Count

For i = 2 To c - 1

Worksheets(i).Select

Rows("2:2").Select

Range(Selection, Selection.End(xlDown)).Select

Selection.Copy

Sheets("data").Select

Set rng = Sheets("data").Range("A65536").End(xlUp)

B = rng.Row

Sheets("data").Cells(B + 1, 1).Select

ActiveSheet.Paste

Next

Sheets("data").Select

Rows("1:1").Select

Selection.AutoFilter

ActiveSheet.Range("$A$1:$D$1048576").AutoFilter Field:=1, Criteria1:=j

Columns("A:D").Select

Selection.Copy

Sheets("成绩汇总表").Select

Columns("A:A").Select

ActiveSheet.Paste

Range("A1").Select

Application.CutCopyMode = False

MsgBox "已汇总完毕"

End Sub

4、插入一个控件,指定这个宏,执行代码你就可以了。

三、最终效果

如果这个回答帮助到了你,请帮忙转发出去,让更多人提高工作效率!

如果这个回答对你有帮助,请关注我,每周分享更多干货!

谢谢你的点赞!

网友解答:

第一、把表一姓名按顺序排序第二在第二张表 用VLOOKUP()函数即可 在成绩处输入公式 =VLOOKUP(B1,Sheet1!B1:C36565,2,TRUE) ,然后一拖到底。选择填充格式。

标签: