Excel知多少-(公式+命令+常用办公解决方案)
[toc]
1. 增减插入行
##1.1. 隔行插入空行(如A1~A10)
1 alt+f11,添加如下代码后f5执行
Sub main()
For I = 10 To 2 Step -1
Rows(I).Insert
Next
End Sub
Sub 插入空行()
For i = 1 To 10 #10即插入10行
Cells(2 * i, 1).Select #(2 * i, 1)即在第2*i行,第1列处插入
Selection.EntireRow.Insert
Next i
End Sub
也可以添加数字辅助列,通过排序来实现空行插入。
##1.2. 隔行排序(制作双语字幕)
- 将原文和译文字幕放在同一列,中间不留空行
- 字幕左边插入一列,对原文以奇数填充(13579…),译文以偶数填充(246810…)
- 对数字列按升序排序,得到的结果就是“1句原文+1句译文”的格式了
2. 重复行+相同行
##2.1. 如何删除重复行
- 全选数据区域→数据菜单→删除重复项→全选(表示所有数据都相同的行才会被删除)
##2.2. 如何快速对比两列数据是否相同
- 选中数据区域
- ctrl+\
- 此时不相同的数据即被选中,填充颜色后即可进行排序
##2.3. 如何对比多列数据是否相同
- 在数据最后一列输入公式
=if(a2=b2,"同","不同")
=if(exact(a2=b2)=true,"同","不同") (区分大小写)
- 然后可以对结果按条件格式显示或排序,方便查看
##2.4. 如何标出完全重复行(多条件求相同行)
- 开始→条件格式→新建规则→使用公式确定要设置格式的单元格
- 输入公式
=sumproduct(($a$1:$a$15=$a1)*($b$1:$b$15=$b1))>1
示例公式表示有ab两列,各15个数据。先找出a列相同数据,再看这些相同数据对应的b列数据是否相同,如果相同则对应的行为完全相同行(有时候公式会出错,不知原因)
3. 设置单元格颜色为填充方式,这样方便按单元格颜色排序
3. 多条件处理
##3.1. 如何按单元格颜色+数值大小排序
- 开始→排序和筛选→自定义排序→排序依据选择单元格颜色
- 左上角添加条件→排序依据选择数值
##3.2. 如何多条件求和
=SUMIFS(B2:B1001,C2:C1001,K2,D2:D1001,L1) (sumifs函数表示求和数据区+条件区1+条件1+条件区2+条件2+……)
以上公式表示先找出C列中的K2,然后找出这些K2在D列中对应的L1,最后求这些L1在B列中的和。
4. 单元格拆分
##4.1. 中英文分离
=left(a1,2) (表示将a1单元格最左边的2个字符拆分出来)
=right(a1,len(a1)-2) (len函数表示返回单元格字符数)
=left(a1,lenb(a1)-len(a1)) (lenb函数表示返回单元格字节数。这个公式可将单元格最左边不固定数量的中文类2字节字符拆分出来)
5. 单元格转换
##5.1. 全半角转换
=asc(a1) (将a1单元格内的全角字符转换为半角)
=widechar(a1) (将a1单元格内的半角字符转换为全角)
##5.2. 字符替换
=substitute(a1,"!","?") (表示将a1单元格内的“!”全部替换为“?”)
=substitute(substitute(a1,"!","?"),"@","$") (可在上一步的基础上多层嵌套)
6. 复制粘贴
##6.1. 快速复制
- 拖动单元格右下角的填充柄进行复制 (不受方向限制,但数据量大则效率低下)
- 双击填充柄进行复制 (效率高,但只可向下复制)
- 先复制单元格,然后选择目标区域,按下enter/ctrl+v即可 (不受方向+连续性限制)
- 先选中源单元格,然后在左上角地址栏中输入目标区域(如c1:c15),再点击右边的编辑栏,最后在ctrl+enter (不受方向限制,数据量大时效率高,但必须连续)
- 先选中单元格,然后在地址栏中输入目标区域最后一个单元格地址(如c15)后按下shift+enter,再点击右边的编辑栏,最后在ctrl+enter (同上)
##6.2. 粘贴时跳过空单元格
- 复制后右键→选择性粘贴→跳过空单元
##6.3. 快速不连续复制(多用于查找替换)
- 查找对象所在的全部单元格
- 在查找对话框中点击查找结果,然后ctrl+a
- 关掉查找对话框,在任意查找对象所在的单元格上右键复制
此时粘贴后的结果是连续的,如果要保持和原对象所在的单元格(比如行)不变,参考6.4
##6.4. 快速不连续粘贴方法1(跳过隐藏行)
假设需要将A列中查找的所有不连续单元格,保持行不变复制到B列
- 首先ctrl+9将正文内容全部隐藏
- 选中A列,查找对象所在全部单元格
- 在查找对话框中点击查找结果,然后ctrl+a
- 关闭查找对话框,按下ctrl+shift+9将显示出查找对象在A列所有单元格
- 使用excel插件“方方格子”→复制粘贴→复制并粘贴可见区域,保持“源区域+粘贴到”的单元格是一致后,点击确定即可
##6.5. 快速不连续粘贴方法2(跳过隐藏行)
假设需要将A列中查找的所有不连续单元格,保持行不变复制到B列
- 添加C列辅助列“序号”,向下填充连续的序号
- 筛选或按6.4的方法只显示出对象所在单元格
- 添加D列辅助列“标记”,填充公式“=row()”
- 取消筛选或隐藏,按D列排序,将对象所在单元格排在一起
- 复制对象所在的全部单元格,粘贴到B列
- 按C列还原之前的排序后,删除CD辅助列即可
More