作为一名程序员, 我们可能很少使用 Excel, 但是公司的一些职能部门, 比如 HR, 财务等, 使用 Excel 真的是太熟练了, 以至于一些系统开发出来, 导入和导出功能是使用最频繁的, 哈哈.
其实在程序开发的过程中, 有些场景, 我们也可以借助于 Excel 来大大的提升工作效率, 比如以下场景:
业务给一批数据, 需要你批量更新下数据库
排查问题时, 我们需要找出数据中的重复项
我们需要将一些内容按某个分隔符拆分成多列内容, 以匹配不同的列
接下来, 我们详细讲解下具体的操作细节.
1. 拼接 Sql 字符串
在做开发的过程中, 经常需要根据 Excel 中的数据去数据库查询, 少量数据还可以去复制粘贴, 大量数据时就需要将 Excel 中的数据拼接成自己需要的 Sql, 以提升工作效率.
1.1: 将某一列拼接成 Sql 中的 In 条件
假设现在有如下的 Excel 数据, 我需要从数据库中查询出这些门店的数据.
操作方法如下图所示:
将生成的一列数据复制到 Visual Studito Code 中, 进行替换即可
1.2: 将某一列拼接成 C# 中的 List
假设现在有如下的 Excel 数据, 我需要将这些值写在 C# 中的 List 中
操作方法如下图所示:
将生成的一列数据复制到 Visual Studito Code 中, 进行替换即可
1.3: 拼接 Sql 语句
你想想, 哪天你正在工作呢, 业务扔过来一个 Excel, 你一脸懵逼, 以下是你们的对话:
业务: 帮我把系统里的某个字段改成 Excel 里的可以吗? 我当时维护错了
你: 你可以在系统里修改啊
业务: 这么多数据, 你让我一个一个改啊? 而且很急, 而且你还要考虑系统好用性, 嘚吧嘚一大堆理由
你: 内心深处, 你是拒绝的, 这明明是业务工作中的失误, 现在却要你这个程序员来善后, 事实上, 你说: 好的
既然答应了, 就得想着咋处理, 数据如果只有几条, 你复制粘贴还可以, 如果是成千上万条呢, 复制粘贴肯定不现实, 累死你不说, 还容易出错.
这时我们就可以借助于 Excel 来快速的拼接 Sql.
假如有如下的 Sql 语句, 现需要将 Where 条件中的 StoreCode 的值替换为 Excel 中的值.
- SELECT st.StoreCode ,
- st.StoreName ,
- s.SellerName ,
- so.SellerOrgName
- FROM dbo.Fct_Store AS st
- INNER JOIN dbo.Fct_Seller AS s ON s.Disabled = 0
- AND st.SellerCode = s.SellerCode
- INNER JOIN dbo.Config_SellerOrg AS so ON so.Disabled = 0
- AND s.SellerOrgCode = so.SellerOrgCode
- WHERE st.Disabled = 0
- AND st.StoreCode = '10000196';
按照 1.1 和 1.2 中的方式, 将 Sql 语句复制到 Excel 中, 提示如下信息 (如果语句长度少的话, 不会出现):
此时, 就需要用到 Excel 中的 CONCATENATE() 函数, 如下所示:
2. 查找重复项
在平时的开发工作中, 我们有时会需要从 Excel 中查找出重复的数据, 以便清理业务数据.
假如现在有如下图所示的文档, 现需要找出 "店铺编码" 列的重复数据.
2.1 新建规则
选中列 "店铺编码", 然后依次点击菜单: 开始 --> 条件格式 --> 突出显示单元格规则 --> 重复值
2.2 设置重复值格式
在 "重复值" 弹出框中, 按照默认的样式点击确定, 会发现重复项被标记出来
2.3 筛选重复数据
点击菜单: 数据 --> 筛选, 然后按照单元格颜色筛选, 就可以只查看重复的数据
筛选后的结果如下所示 (只显示了重复的数据, 达到了我们的目的):
2.4 清除规则
如果想恢复原来的数据, 可以点击开始 --> 条件格式 --> 清除规则 --> 清除整个工作表的规则, 清除掉该规则.
3. 单元格内容拆分
一般情况下, 开发在记录一些日志时, 都会比较简单, 如: 1274206, 商品 1274206 已淘汰, 但是发给到运营时, 运营一般都关注的比较细, 需要明确的表头.
以下为程序中开发记录的日志:
但是发给运营时, 运营需要明确的表头, 如: 商品编码, 失败原因
此时就需要将单元格的内容根据, 拆分成多个单元格, 操作步骤如下:
3.1. 选中需要拆分的数据, 点击数据 -- 分列
3.2 选中单元框: 分隔符号, 点击下一步
3.3 分隔符号选中逗号, 点击下一步, 然后点击完成
此时会看到单元格的内容自动拆分成两列, 如下所示:
4. 永久取消超链接
在使用 Excel 的过程中, Excel 会自动将网址转换为超链接, 操作不当, 容易误点, 引起不必要的错误.
那么如何在 Excel 2013 里永久取消超链接呢?
1. 依次打开菜单文件 -- 选项, 弹出 Excel 选项弹出框
2. 选中左侧菜单 "校对", 点击 "自动更正选项"
3. 取消勾选 "Internet 及网络路径替换为超链接"
来源: https://www.cnblogs.com/zwwhnly/p/10695533.html