如何从EXCEL中快速提取中文?

来源:百度知道 编辑:UC知道 时间:2024/06/30 13:22:38
如果有N多如下的单元格
Manager经理
Operator操作工
Warehouse Leader仓库管理组长
Pakcing 包装操作工

而我现在只要取其中的中文或者英文要如何操作呢?
请高手指教一下.有公式的话请稍加解释 谢谢

给你一个自定义函数吧,操作如下:按ALT+F11,或
依次点工具,宏,VB编辑器,弹出的编辑器中点插入模块,新弹出的空白窗口中输入以下代码:
Function getchn(MyValue As Range)

Dim i As Integer

Dim chn As String

For i = 1 To Len(MyValue)

If Asc(Mid(MyValue, i, 1)) < 0 Then

chn = chn & Mid(MyValue, i, 1)

End If

Next

getchn = chn

End Function

关闭VB编辑器窗口,回到表格中,

选中你要显示中文字符的单元格,如B1,点插入,函数,选择自定义函数,这时函数列表中有一个“getchn”这样的函数,这就是你刚才编辑的那段VB编码代表的一个自定义函数。其用法和EXCEl中函数用法是一样的,其参数就是你包含中中文那个单元格,比如A1单元格,就是你的“”字符串。结果是经理两个字显示在B1中,

写以上过程是让你明白,刚才编辑的这个函数是什么意思,其实,你可以直接在B1中输入:=getchn(A1)
得到的结果就是“经理”两个字,
光标指向B1单元格右下角小黑点,光标会变成小黑十字,双击左键,完成。

但愿你能看明白。

回答者: NG_677 - 江湖新秀 五级的答案,对于例子来说是一个简单的办法,但是其对于“Manager经理A1”这样的混合数据就不行了。

另外,如你所问的:如果你想只提取英文,你可以另编辑一个自定义函数(别叫getchn,可以叫geten这样的随便你喜欢了),然后编码中的“If Asc(Mid(MyValue, i, 1)) < 0 Then ”语句把<0改成>0就OK了。

若单元格A1为 Manager经理
取中文: