EXCEL vba 自动填写表格中的内容。

2024-11-29 15:46:28
推荐回答(1个)
回答1:

右键工作表标签,贴入下面VBA代码。

这段代码是依据你图上的位置来写的,实际情况,可修改部分单元格区域。

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim TableRng As Range
    Dim DestRng As Range
    
    If Target.Address = "$N$10" Then ''判断是不是姓名单元格,可更改
        ''传入查找区域,可更改
        Set TableRng = Range("N13:S22")
        
        Set DestRng = TableRng.Find(what:=Target.Value, lookat:=xlWhole)
        With Target
            ''返回各科成绩,数量可更改
            .Offset(0, 1) = DestRng.Offset(0, 1)
            .Offset(0, 2) = DestRng.Offset(0, 2)
            .Offset(0, 3) = DestRng.Offset(0, 3)
            .Offset(0, 4) = DestRng.Offset(0, 4)
        End With
    End If
End Sub