如何更改使用 VBA 从另一个单元格复制的某些单元格的值

问题描述 投票:0回答:1

我在工作表 1 中有这些列,我将它们复制并粘贴到工作表 2 中。我将在级别列上使用过滤器并仅复制可见单元格。我想知道如何更改表 2 中的 E 列值。

NIP 姓名 数学成绩 英语成绩 级别
1234 阿丽亚娜 67 67 高中1
1235 布莱恩 89 89 高中2
1236 查理 78 90 高中1
1237 哈利 85 86 高中3

上面的数据将粘贴到 Sheet 2 中,我希望像这样更改级别列的值:

高中 1 等 -> 级别 1 等

提前谢谢您!

excel vba excel-2010
1个回答
0
投票

复制过滤数据

Sub CopyFilteredData()
    
    Dim wb As Workbook: Set wb = ThisWorkbook ' workbook containing this code
    
    Dim sws As Worksheet: Set sws = wb.Sheets("Sheet1")
    Dim srg As Range: Set srg = sws.Range("A1").CurrentRegion
    
    Dim dws As Worksheet: Set dws = wb.Sheets("Sheet2")
    dws.UsedRange.Clear
    
    With dws.Range("A1")
        srg.Copy .Cells
        With .CurrentRegion
            .Resize(.Rows.Count - 1, 1).Offset(1, 4) _
                .Replace "Senior High", "Level", xlPart, , False
        End With
    End With
    
    MsgBox "Filtered data copied.", vbInformation
    
End Sub
© www.soinside.com 2019 - 2024. All rights reserved.