云霞资讯网

简简单单提取出每个人连续休假 3 天以上的所有记录

解答网友提问:如何找出每一列中某字符连续出现 3 次及以上的记录?案例:提取出下图 1 的每一列中“休”连续出现 3 次

解答网友提问:如何找出每一列中某字符连续出现 3 次及以上的记录?

案例:

提取出下图 1 的每一列中“休”连续出现 3 次及以上的所有结果。

效果如下图 2 所示。

解决方案:

1. 选中数据表的任意单元格 --> 选择任务栏的“数据”-->“从表格”

2. 在弹出的对话框中保留默认设置 --> 点击“确定”

表格已经上传至 Power Query。

3. 选择任务栏的“转换”-->“转置”

4. 选中所有列 --> 选择任务栏的“转换”-->“合并列”

5. 在弹出的对话框中保留默认设置 --> 点击“确定”

6. 选择任务栏的“转换”-->“拆分列”-->“按分隔符”

7. 选择“自定义”--> 输入“班”--> 点击“确定”

8. 再次选择任务栏的“转换”-->“转置”

9. 添加“索引列”。

10. 选中“索引”列 --> 选择任务栏的“转换”-->“逆透视列”-->“逆透视其他列”

11. 从“值”列的下拉菜单中勾选所有三个“休”以上的选项。

12. 在“查询”区域中复制“表1”。

13. 选中“属性”列 --> 选择任务栏的“主页”-->“分组依据”

14. 保留默认设置 --> 点击“确定”

15. 按以下方式修改公式:

将 RowCount 修改为 AddIndexColumn;

将 _), Int64.Type 修改为 _,"a",1,1, Int64.Type)

16. 展开“计数”列 --> 仅勾选“索引”和“a”--> 取消勾选“使用原始列名作为前缀”--> 点击“确定”

17. 选中“查询”区域中的“表1”--> 选择任务栏的“主页”-->“合并查询”

18. 在弹出的对话框中依次选中“索引”和“属性”列 --> 在下拉菜单中选择“表1 (2)”--> 依次选中“索引”和“属性”列 --> 点击“确定”

19. 展开“表1 (2)”--> 仅勾选“a”--> 取消勾选“使用原始列名作为前缀”--> 点击“确定”:

20. 删除“索引”列。

21. 选中“属性”列 --> 选择任务栏的“转换”-->“透视列”

22. 选择“值”--> 点开“高级选项”--> 选择“不要聚合”--> 点击“确定”

23. 删除“a”列,并且调整列顺序。

24. 选择任务栏的“主页”-->“关闭并上载”-->“关闭并上载至”

25. 在弹出的对话框中选择“仅创建连接”--> 点击“加载”

26. 在右侧的“工作簿查询”区域中选中“表1”--> 右键单击 --> 在弹出的菜单中选择“加载到”

27. 在弹出的对话框中选择“表”--> 选择“现有工作表”及所需加载到的位置 --> 点击“加载”

右侧绿色的表格就是所需的结果。