gpt4 book ai didi

string - VBA Excel 查找字符串中的最后一个特定实例

转载 作者:行者123 更新时间:2023-12-02 23:56:49 24 4
gpt4 key购买 nike

我在 Excel 中有一个字符串列表,如下所示:

a>b>b>d>c>a

a>b>c>d

b>b>b>d>d>a

等等

我想从每个字符串中提取最后一个 c 或最后一个 d,以最后一个为准,

例如

a>b>b>d>c>a = C

a>b>c>d = d

b>b>b>d>d>a = d

我该如何使用VBA(或者如果可能的话直接使用Excel)来做到这一点?

最佳答案

您可以使用 Excel 公式,如下所示

为了帮助解释,将以一个字母开头,然后在末尾显示完整的公式。

首先找出c出现的次数

= LEN(A1) - LEN(SUBSTITUTE(A1,"c","")

使用该位置将最后一个c替换为唯一字符(以$为例)

=SUBSTITUTE(A1,"c","$",LEN(A1) - LEN(SUBSTITUTE(A1,"c","")))

接下来找到这个独特的角色

= FIND("$",SUBSTITUTE(A1,"c","$",LEN(A1) - LEN(SUBSTITUTE(A1,"c",""))))

这给出了最后一个 c 的位置,现在您可以在 mid 函数中使用它来返回最后一个 c

= MID(A1,FIND("$",SUBSTITUTE(A1,"c","$",LEN(A1) - LEN(SUBSTITUTE(A1,"c","")))),1)

最后,为了同时考虑 c 和 d,使用 max 来返回最后一个

= MID(A1,MAX(IFERROR(FIND("$",SUBSTITUTE(A1,"c","$",LEN(A1) - LEN(SUBSTITUTE(A1,"c","")))),0),IFERROR(FIND("$",SUBSTITUTE(A1,"d","$",LEN(A1) - LEN(SUBSTITUTE(A1,"d","")))),0)),1)

关于string - VBA Excel 查找字符串中的最后一个特定实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35359830/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com