你好专家 - 更新多个值

你好专家 - 更新多个值

我有 3 列数据:1. 用户 2. 用户 ID 3. 角色。

我想要做的是将用户名替换为值 User_1、User_2、User_3...,然后删除 User_id 并保留 Role 列。一个用户可以拥有多个角色,大约有 60k 个用户。我想要的是代码根据用户拥有的角色数量自动将用户的实际名称更改为 User_1、User_2、User_3 等 - 任何关于如何在 Excel 中实现这一点的想法都值得赞赏。

以便:

Mr England Approver
Mr Wales Approver
Mr Wales Query Builder
Mr Wales Reports
Mrs Scotland Approver
Mrs Scotland Query Builder
Mr Ireland Approver
Mr France Query Builder
...and so on for all users - this to my mind is a 1 to many scenario

答案1

假设:A 列表示用户,B 列表示用户 ID,C 列表示角色;同时假设每行显示每个用户的不同角色。

ALT+打开 VBA 编辑器F11。插入模块,然后输入以下代码,然后运行宏:

Sub DeleteUserName()

    Dim lRow As Long
    
    'Find the last non-blank cell in column A(1)
    lRow = Cells(Rows.Count, 1).End(xlUp).Row
    
    For x = 2 To lRow
        'Set value of User from User Id value
        ActiveSheet.Range("A" & x).Value = ActiveSheet.Range("B" & x).Value
    
    Next
    'Delete column B - User Id column
    ActiveSheet.Columns(2).Delete

End Sub

B 列中每个单元格的值被复制到 A 列。然后删除 B 列。

在此处输入图片描述

相关内容