Office中国论坛/Access中国论坛

标题: 求教:execl单元格中,将机构名称转换为固定数值,以进行排序,谢谢 [打印本页]

作者: qssw    时间: 2008-7-20 13:45
标题: 求教:execl单元格中,将机构名称转换为固定数值,以进行排序,谢谢
机构名称            转换为数值            查找出关键字
  A机构                       1                      A
  C机构                       3                     other
  B机构                       2                     other
  
  
说明:         
机构名称中A、B、C为关键字         
拟判断关键字,将机构转换为固定的数字,以进行机构排序         
  
查找关键字:=IF(ISNUMBER(FIND("A",B6)),"A","other")         
  
请问如何实现?         

[attach]31116[/attach]
作者: pureshadow    时间: 2008-7-20 17:32
转换可以用VLOOKUP函数
另外,这样做只是为了排序吗?
可以用自定义序列排序,不转换也行.
作者: qssw    时间: 2008-7-20 21:38
谢谢版主。
  看来我没说清楚,我这样做的目的,的确只是为了排序,因为工作中经常对机构数据进行汇总。
  但,不同数据来源中,机构的顺序不同。(如果把顺序排成相同了,就便于粘贴,也不易出错)
  只所以不能简单地“排序”,是因为机构名有简称、全称,但机构关键字不重复。
  根据机构关键字,把机构名称转换为对应的数值,就达到与主表顺序相同的目的了。
  重新举例:

  机构名称            对应的数值
  陕西省汉中市    2
  西安市       1
  中国陕西咸阳    5
  陕西省宝鸡     6
  .......        ......
  
  其中”汉中“、“西安”、“咸阳”等是关键字。

  如果用编程的方法,就比较好实现,但如果单独编程就得来回转换格式,也大大降低了效率。
  不知有没有办法(我的execl只是最初级的应用水平),谢谢。

  另外,我有这样一个思路,不知是否可行:

  是不是可以自定义一个函数,直接调用。
  函数是一个if  then else结构的判断:

  if ISNUMBER(FIND("西安",B6))
          then "西安"
            else if ISNUMBER(FIND("汉中",B6))
             then "汉中"
       else if ......

谢谢。

[ 本帖最后由 qssw 于 2008-7-20 22:02 编辑 ]
作者: pureshadow    时间: 2008-7-20 22:10
机构名有简称、全称,但机构关键字不重复........
有小点复杂......
作者: qssw    时间: 2008-7-21 00:19
太感谢了!
版主真是高人!
惊奇[:31]
感动[:30]
我简直要晕了[:27]
作者: wodzsqtg    时间: 2008-8-3 20:31
要晕了
作者: starbgs    时间: 2008-8-6 17:29
不错,高手,学习了!!!
作者: zhang634211    时间: 2008-8-7 16:52
看看
作者: 业余爱好者    时间: 2008-8-8 13:26
原帖由 pureshadow 于 2008-7-20 22:10 发表
机构名有简称、全称,但机构关键字不重复........
有小点复杂......


方法不错

公式可以简化一下

{=MAX(ISNUMBER(FIND($F$1F$3,A1))*$G$1G$3)}

还是数组公式
作者: 业余爱好者    时间: 2008-8-8 13:27
不要动不动就想到什么编程

好象很高深很难的样子



其实就那么简单




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3