员工管理 删除
1 功能描述

输入员工编号,点击[删除员工]按钮。
运行结果
[A01员工]工作表删除YG0011这条记录。
2 主要步骤
步骤1:校验,判断ID是否存在
步骤2:根据ID所在单元格,删除行
3 完整代码
Sub del()
    '声明变量
    Dim id As String            '要修改的ID
    Dim rowIndexLast As Integer '最后一行的行号
    Dim idCell As Range         'ID所在单元格
    获取要查找的ID
    id = Worksheets("B01员工管理").Range("B6").Value
    '步骤1:校验,判断ID是否存在
    '通过当前区域获取新行的行号
    rowIndexLast = Worksheets("A01员工").Range("A1").CurrentRegion.Rows.Count
    Debug.Print "rowIndexLast:" & rowIndexLast
    '查找单元格
    Set idCell = Worksheets("A01员工").Range("A2:A" & rowIndexLast).Find(id, lookat:=xlWhole)
    If idCell Is Nothing Then
        MsgBox "id不存在,无法删除。id:" & id
        Exit Sub
    End If
    '步骤2:删除行
    idCell.EntireRow.delete
    
    MsgBox "删除成功。", Title:="关关教程tuto.dushare.cn"
End Sub
 
注:此过程名称避开系统对象Sheet的Delete过程名,否则使用不当会删除当前工作表。
4 代码讲解
idCell.EntireRow:获取单元格的所在行,再调用delete删除行。不要直接删除单元格,删除单元格会存在移位问题,不建议使用。
5 测试用例
正常用例:当数据存储表[A01员工]中的ID存在时,删除成功。
异常用例:ID不存在时,“id不存在,无法删除。id:****”。