作为一名程序员,我们可能很少使用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 及网络路径替换为超链接"

程序员如何巧用Excel提高工作效率的更多相关文章

  1. 程序员如何巧用Excel提高工作效率 第二篇

    之前写了一篇博客程序员如何巧用Excel提高工作效率,讲解了程序员在日常工作中如何利用Excel来提高工作效率,没想到收到很好的反馈,点赞量,评论量以及阅读量一度飙升为我的博客中Top 1,看来大家平 ...

  2. 巧用Excel提高工作效率

    程序员如何巧用Excel提高工作效率 主要讲解下Excel中VLOOKUP函数的使用,相比于上一篇中的内容,个人觉得这个相对高级一些. 1.使用背景 为什么会使用到这个函数呢,背景是这样的,有两个系统 ...

  3. 程序员提高工作效率的15个技巧【Facebook】

    程序员提高工作效率的15个技巧[Facebook] 作者: habadog 日期: 2015 年 02 月 13 日发表评论 (0)查看评论 程序员提高工作效率的15个技巧[Facebook] 1,D ...

  4. Windows 下有什么软件能够极大地提高工作效率

    Windows 下有什么软件能够极大地提高工作效率?修改 可以推荐一些好的应用或者有趣的程序,能提升工作效率或者能让人眼前一亮的.修改 举报1 条评论 分享 • 邀请回答   按票数排序按时间排序 2 ...

  5. 美国一家科技公司毕威拓(Pivotal)规定员工在早上9点06分准时上班,以提高工作效率。

    美国一家科技公司毕威拓(Pivotal)规定员工在早上9点06分准时上班,以提高工作效率. 据<英国广播公司BBC>报道,美国科技公司毕威拓(Pivotal)的员工每天都要在9点06分准时 ...

  6. Android Studio in OSX 提高工作效率的快捷键

    前言 本篇文章参考了<倍数提高工作效率的Android Studio>一文,快捷键基于OS X系统. OS X Yosemite 10.10.5 Android Studio 1.3.1 ...

  7. 倍数提高工作效率的 Android Studio 奇技

    来源:JeremyHe 链接:http://zlv.me/posts/2015/07/13/14_android-studio-tips/ 这是从Philippe Breault的系列文章<An ...

  8. [转]倍数提高工作效率的 Android Studio 奇技

    转自:http://android.jobbole.com/81687/ 倍数提高工作效率的 Android Studio 奇技 2015/10/08 · 技术分享 · 4 评论· Android S ...

  9. 15款提高工作效率的 Web 项目管理工具

    在今天的快节奏的商业世界里,能够通过计划.组织.和管理资源池以及评估开发资源的模式来管理一个项目,是一个很艰巨的任务. 有很多现成的项目管理软件来帮助减轻项目管理的负担,并且他们几乎覆盖了所有类型的业 ...

随机推荐

  1. 3d轮播图(另一种方式,可以实现的功能更为强大也更为灵活,简单一句话,比酷狗优酷的炫)

    前不久我做了一个3d仿酷狗的轮播图,用的技术原理就是简单的jquery遍历+css样式读写. 这次呢,我们换一种思路(呵呵其实换汤不换药),看到上次那个轮播吗?你有没有发现用jquery的animat ...

  2. .NET开发设计模式-模板模式

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  3. Spring源码阅读笔记

    前言 作为一个Java开发者,工作了几年后,越发觉力有点不从心了,技术的世界实在是太过于辽阔了,接触的东西越多,越感到前所未有的恐慌. 每天捣鼓这个捣鼓那个,结果回过头来,才发现这个也不通,那个也不精 ...

  4. nohup在linux中的挂起

    笔者也是一个linux新手,最近在学习linux相关的东西,本人是一个node爱好者,想在linux上写一个linux服务,我的环境是centeros7,用putty链接远端的服务器,要想让服务在服务 ...

  5. Unity3D学习(七):Unity多重采样抗锯齿设置无效的解决办法

    前言 学习Shader的过程中发现模型锯齿严重,于是去Edit--Project Settings--Quality选项下将反锯齿设置为了8X Multi Sampling.结果没有任何改变,如图: ...

  6. C/C++ 数据结构之算法

    数据结构中的排序算法. 排序算法的相关知识: (1)排序的概念:所谓排序就是要整理文件中的记录,使之按关键字递增(或递减)次序排列起来. (2)稳定的排序方法:在待排序的文件中,若存在多个关键字相同的 ...

  7. Java公开课-03.内部类

    一.内部类的作用 1.实现了类的隐藏 2.实现了多重继承 3.内部类拥有外部类所拥有的属性和方法的访问权限 4.避免修改接口的时候出现同名方法 二.内部类--成员内部类 1.如果我们想访问内部类,我们 ...

  8. 获取GRIDVIEW中的TemplateField显示的文本值

    GRIDVIEW中数据源绑定后的属性绑定我一般采取2种办法 一个是BoundField,只要设置DataField的对应属性名即可: 如: <asp:BoundField HeaderText ...

  9. adb常用操作命令

    1.adb简介:    adb,即 Android Debug Bridge.通过这个工具和android进行交互操作 2.adb命令格式:    adb [-d|-e|-s <serialNu ...

  10. Android 打造编译时注解解析框架 这只是一个开始

    转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/43452969 ,本文出自:[张鸿洋的博客] 1.概述 记得很久以前,写过几篇博客 ...