日常办公Office相关函数应用
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
日常办公的EXCEL函数应用
一、身份证号分男女(报邮政开户):
=IF(MOD(RIGHT(LEFT(D4,17)),2),"男","女")
或=IF(MOD(MID(D4,IF(LEN(D4)=15,15,17),1),2),"男","女")
二、取姓名第一个字母(报邮政开户):
打开Excel->工具->宏->Viaual Basic编辑器
在弹出来的窗口中对着VBAproject点右键->插入->模块
下面会出现一个名为"模块1",点击
在右边的空白栏中粘贴以下内容:
Function getpychar(char)
tmp = 65536 + Asc(char)
If (tmp >= 45217 And tmp <= 45252) Then
getpychar = "A"
ElseIf (tmp >= 45253 And tmp <= 45760) Then
getpychar = "B"
ElseIf (tmp >= 45761 And tmp <= 46317) Then
getpychar = "C"
ElseIf (tmp >= 46318 And tmp <= 46825) Then
getpychar = "D"
ElseIf (tmp >= 46826 And tmp <= 47009) Then
getpychar = "E"
ElseIf (tmp >= 47010 And tmp <= 47296) Then
getpychar = "F"
ElseIf (tmp >= 47297 And tmp <= 47613) Then
getpychar = "G"
ElseIf (tmp >= 47614 And tmp <= 48118) Then
getpychar = "H"
ElseIf (tmp >= 48119 And tmp <= 49061) Then
getpychar = "J"
ElseIf (tmp >= 49062 And tmp <= 49323) Then
getpychar = "K"
ElseIf (tmp >= 49324 And tmp <= 49895) Then
getpychar = "L"
ElseIf (tmp >= 49896 And tmp <= 50370) Then
getpychar = "M"
ElseIf (tmp >= 50371 And tmp <= 50613) Then
getpychar = "N"
ElseIf (tmp >= 50614 And tmp <= 50621) Then
getpychar = "O"
ElseIf (tmp >= 50622 And tmp <= 50905) Then
getpychar = "P"
ElseIf (tmp >= 50906 And tmp <= 51386) Then
getpychar = "Q"
ElseIf (tmp >= 51387 And tmp <= 51445) Then
getpychar = "R"
ElseIf (tmp >= 51446 And tmp <= 52217) Then
getpychar = "S"
ElseIf (tmp >= 52218 And tmp <= 52697) Then
getpychar = "T"
ElseIf (tmp >= 52698 And tmp <= 52979) Then
getpychar = "W"
ElseIf (tmp >= 52980 And tmp <= 53640) Then
getpychar = "X"
ElseIf (tmp >= 53689 And tmp <= 54480) Then
getpychar = "Y"
ElseIf (tmp >= 54481 And tmp <= 62289) Then
getpychar = "Z"
Else '如果不是中文,则不处理
getpychar = char
End If
End Function
Function getpy(str)
For i = 1 To Len(str)
getpy = getpy & getpychar(Mid(str, i, 1))
Next i
End Function
********复制到此结束,本行不复制*******
现在转换函数已编写完成!关掉此编缉的窗口。
要在Excel中使用,方法如下:
H4=getpy(B4)
三、两组数据合并(用于筛选赋帐户,或筛选已开户人员)
=vlookup(A2,另一个表名称!$B$2:$C$5000,4,false)
A2表示当前表格中要比对的单元格(如:身份证号所在单元号);B2表示另一个表要比对的单元格(数据跟前一个表一样);4表示要从另一个表中自B2开始数的第4栏(E栏),也就是需要从另一个返回到当前表格的数据;false是指精确比对;$表示绝对引用。
四、去掉单元单中的空格(用于删除邮政返回数据中空格)
=trim(A1)
五、检查数据是否重复(用于姓名等,用于身份证不准)
假设表1的名称是"表1",名字数据在A2-A100;表2的名称是"表2",名字数据在
A2-A200,
在表1的B1输入:重名检查,B2输入:
=COUNTIF(表2!A$1:A$200,A2)
然后往下复制或填充到B100->选中B列->工具栏->数据->筛选->自动筛选->自定义->选择"大于或等于"->1->确定.
这样筛选出来的数据是表1与表2中重复的.
如果检查表1本身有无重复:
=COUNTIF(C$2:C$8000,C3)
然后往下复制或填充到B100->选中B列->工具栏->数据->筛选->自动筛选->自定义->选择"大于或等于"->2->确定.
这样筛选出来的数据是表1本身重复的.
六、检查相同身份证号码(检查同一个表内数据)
=IF((C2=C3),1,0)
1.把身份证号这列(暂定为C列,C2开始为第一个记录)进行排序,升降不论。目的是让相同的号码能放在一起。
2.插入D列,作为判断列。
3.在D2处输入如下公式后,双击D2单元格填充柄,公式全部自动往下复制了。公式是:
=IF((G2=G3),1,0)
公式的意思是如果上边单元值与下边单元格的值相等时,判断值为1,不等时为0.
七、检查重复(检查同一张表内是否重复):
=IF(COUNTIF(B:B,B7&"*")>1,"重复","唯一")
八、检查帐号是否正确:
=IF(LEN(E1788)=18,IF(MOD(MID(E1788,1,1),6),"错误帐号",""),"不是18位") 如果帐号不是18位,刚返回“不是18位”;如果帐号数位正确,刚检查第一位数是不是我们麻江邮政开户的帐号(以6开头的);如果数位和帐号首个字母符合,刚不作任何提示。
分解小函数:
1、检查帐号首个数字(防止帐号录成身份证号):
=IF(MOD(MID(E2,1,1),6),"错","")
2、数字符数(帐号或身份证号):
=IF(LEN(D4)=18,"对","错")