EXCEL中编写一个“按照学号排列学生成绩”的宏

来源:百度知道 编辑:UC知道 时间:2024/09/21 12:34:56
最近在学习EXCLE中的宏

可是进展好慢啊……

不知道怎么才能把这些命令结合起来

请高手们老帮帮我啊

比如说录入学生成绩

现有一份学生成绩(学生姓名、成绩) 不是按照学生学号来排名的

我想编辑一个宏 将学生的成绩信息按照学号(另外一张表格中)将学生的学号、姓名、成绩列在该表格的另一区域中

我想了一个小思路,可是执行不了,如下:

Sub 店名()
' 店名 Macro
n = 1
Do While Sheets(1).Range("A" & n).Value <> "" ——如果A列值不是空则向下运算
If Sheets(1).Range("A" & n).Value = "张三" Then ——查找A列中叫“张三”的
Range("'A'&n:'B'&n").Select ——选择张三这行的信息(如姓名、成绩)
Range("D1").Select ——将上信息复制在D1列中
ActiveSheet.Paste
End If
n = n + 1
Loop
End Sub

这样的程序当然执行不了
假设sheet1表为成绩信息表,A列为学号,C列为空,sheet2表为学号表,A列为学号,B列为姓名
Sub abc()
n = 1
Do While Sheets(1).Cells(n, "A") <> ""
For i = 1 To Sheets(2).Range("A1").End(xlDown).Row
If Sheets(1).Cells(n, "A") = Sheets(2).Cells(i, "B") Then
Sheets(1).Cells(n, "C") = Sheets(2).Cells(i, "A")
Exit For
End If
Next i
n = n + 1
Loop
End Sub