【问题标题】:Remove consecutive duplicates from text in cell从单元格中的文本中删除连续的重复项
【发布时间】:2014-10-22 22:13:28
【问题描述】:

我几乎找到了我想要的东西:

How do I remove duplicate values in a cell seperated with a /?

...但是从这里开始,我想知道是否可以对其进行修改以仅删除连续的重复项,而不是所有重复项。 (我指的是 Kev spitz 的回答)。

例如,1-1-3-4-2-2-2-2-5-2-1 目前将返回 1/3/4/2/5

但我希望它返回 1-3-4-2-5-2-1

我已经研究过修改用户定义的函数,但老实说,这对我有限的能力来说太过分了:)

感谢任何帮助。

谢谢

【问题讨论】:

    标签: excel user-defined-functions vba


    【解决方案1】:

    考虑:

    Public Function LJays(sIn As String) As String
        ary = Split(sIn, "-")
        LJays = ary(0)
        For i = LBound(ary) + 1 To UBound(ary)
            If ary(i) <> ary(i - 1) Then
                LJays = LJays & "-" & ary(i)
            End If
        Next i
    End Function
    

    【讨论】:

    • 这有点工作,但它忽略了字符串开头和结尾的连续重复。这似乎是因为字符串没有以“ - ”开头和结尾。我可以通过在我正在做的上一阶段的开头和结尾添加一个额外的“ - ”来解决这个问题。除非作为函数的一部分有一个简单的编辑可以做到这一点,否则删除函数末尾的额外内容?
    • @LJays99 让我运行一些测试。
    • 我已将“-”更新为“-”,因为我使用的格式包含空格............然后我在开头添加了这一行: sIn = " - " & sIn & " - " 这消除了所有连续的重复,但我仍然坚持在开头和结尾加上额外的 - 。现在可能可以用谷歌搜索,但如果你知道的话。干杯!
    • 我能尽快为您提供真正的电脑!
    • 在单元格数据中,每个破折号前后是否有一个空格??
    猜你喜欢
    • 2014-03-31
    • 2019-12-24
    • 2015-03-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-11
    • 1970-01-01
    相关资源
    最近更新 更多