工具->宏->Viaual Basic编辑器在弹出来的窗口中对着V">

日常办公Office相关函数应用

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 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,"对","错")

相关文档
最新文档