内部数据的思考
数据安全一直是企业和公司的生命线,所以在内网一般只有excel这些基础的工具,不能随意安装其他软件,把数据直接导出到外地电脑又存在安全隐患,所以得先采取数据脱敏的方式来解决。主列(形容需要按照这一列进行后续的任务处理的那一列,这里举一个例子为客户号列)以下分成两种情况处理:1、假如主列数据是不重复的名字,这是属于简单情况。2、假如主列数据是存在有重复的名字,这是复杂情况。
情况1
简单版可以按照情况2介绍的vlookup函数进行处理!
冗长版如下:
对名字进行打标,生成一列有序数列1~n,这里的n取决于有多少行,然后把名字删除导出数据。后续对数据进行处理时有行序的变化,比如把符合某些条件的行删除,然后得到一个新表,回到内网的表格又要把这些标签数字替换成人人名。excel的处理方式如下:
其中,蓝色的是原来对应的值,红色的是处理后的表格结果,现在的任务是要把rank里面的数字替换成对应的name值:
采取自定义序列排序
采取自定义序列排序
采取自定义序列排序
导入rank列作为自定义序列,接下来选择前三列进行扩展排序:
选中导入的自定义序列点击确定得到:
然后对前三列进行单独处理,采用筛选工具对rank为空白值的行进行删除得到name的序列就是和上面tall的序列对应的
情况2
情况1也可以采用的函数vlookup(可以自己想想),假设数据成了下面的样子:
先来介绍vlookup的四个参数:
lookup_value:需要根据什么数据去查找,例如任务中需要根据rank值查找,选中5【C2】
table_array:在什么目标表格中查找,目标值rank列对应的queue列需要作为表格的第一列
col_index_num:查找queue所对应的值,以table_array表格的第一列为1依次向右数,例如任务的name为第二列,输入2
[range_lookup]:0为精确查找,1为模糊查找(找不到会随机给一个值,一般不用这个)
按照任务新建第四列空白列,在第四列D2输入函=VLOOKUP(C2,$A$1:$B$8,2,0),其中$A$1:$B$8这个为锁定框选表格,框选后按F4即可,下拉填充得到如下:
怎么快速打标签
使用 VBA 宏
打开 VBA 编辑器
按下Alt + F11组合键,打开 Microsoft Visual Basic for Applications 窗口。
插入模块
在 VBA 编辑器中,依次点击 “插入” - “模块” 。
编写宏代码
在模块窗口中输入以下代码:
Sub FillQueueColumn()
Dim lastRow As Long
Dim i As Long
Dim numDict As Object
Set numDict = CreateObject(“Scripting.Dictionary”)
lastRow = Cells(Rows.Count, 2).End(xlUp).Row
For i = 2 To lastRow
If Not numDict.exists(Cells(i, 2).Value) Then
numDict(Cells(i, 2).Value) = numDict.Count + 1
End If
Cells(i, 1).Value = numDict(Cells(i, 2).Value)
Next i
End Sub
运行宏
代码输入完成后,关闭 VBA 编辑器,按Alt + F8组合键,在弹出的 “宏” 对话框中选择 “FillQueueColumn” 宏,然后点击 “执行” 按钮,“queue” 列就会快速填充好相应编号。
🆗了