第1个回答 2013-09-13
这个问题只能用自定义函数来实现,现套用楼上的代码,为方便记忆,将函数名改了下,取“重复”二字的首字母cy.
Public Function cy(text As String)
Dim j As String
For i = 1 To Len(text)
j = Mid(text, i, 1)
If InStr(cy, j) = 0 Then cy = cy & j
Next
End Function
详细操作步骤如下:
新建一工作簿,按alt+f11进入vbe窗口,单击“插入”-“模块”-在代码窗口中将上面的代码复制粘贴进来(因楼上的代码格式有问题,请复制我提供的代码),然后单击“保存”按钮,在弹出的另存为对话框中,“保存类型”选最下面的那个“microsoft excel 加载宏(.xla)”,取个文件名(譬如取名“删除不重复文字”),“保存”。
以后要用到此函数时,在任意工作表中单击“工具”-“加载宏”,勾选“删除不重复文字”宏,“确定”。然后就可以在任何时候都能像使用其它函数一样方便地使用此自定义函数了。
在A1中输入“张三/李四/张三/李四”,在B1输入=cy(A1),回车即可求出正确结果。
如果不想使用此函数时,可以在加载宏对话框中取消勾选此宏就行了,或者想完全删除的话,除了要取消加载外,还要在C:\Documents and Settings\Administrator\Application Data\Microsoft\Addins中找到此宏文件删除。
第2个回答 2015-11-03
以/为分隔符号进行分列 然后转置 删除重复项
第3个回答 2013-09-13
各位的自定义公式请测试这个:张三/李四/张三/李四/张四/李三,在大家的基础上我也来一个:
Public Function yy(t$) As String
'功能:去除“/”分割的重复项
Dim i%, ar
ar = Split(t, "/")
For i = 0 To UBound(ar)
If InStr(yy, ar(i)) = 0 Then yy = IIf(yy = "", ar(i), yy & "/" & ar(i))
Next
End Function本回答被网友采纳
第4个回答 2013-09-13
自定义函数
Public Function weiyi(text As String)
Dim j As String
For i = 1 To Len(text)
j = Mid(text, i, 1)
If InStr(weiyi, j) = 0 Then weiyi = weiyi & j
Next
End Function
语法,“张三/李四/张三/李四”在A1单元格,在B1输入
=weiyi(A1)