Excel formula 使用IF、FIND&;将条形码转换为特定格式;excel的中间函数

Excel formula 使用IF、FIND&;将条形码转换为特定格式;excel的中间函数,excel-formula,Excel Formula,在Excel中,我有许多列包含不同类型的条形码,例如: WS-S5-S-L1-C31-F-U5-S9-P14转换为05-09-14 WS-S5-S-L1-C31-F-U5-S8-P1转换为05-08-01 WS-S5-N-L1-C29-V-U16-S6-P6转换为16-06-06 我想使用以下规则将这些字符转换为8个字符: 适当时删除U和前缀0 在适当的情况下删除S和前缀0 在适当的情况下删除P和前缀0 我相信有一种方法可以使用IF、FIND和MID函数在Excel中转换这些内容,但不知道如

在Excel中,我有许多列包含不同类型的条形码,例如:

WS-S5-S-L1-C31-F-U5-S9-P14转换为05-09-14

WS-S5-S-L1-C31-F-U5-S8-P1转换为05-08-01

WS-S5-N-L1-C29-V-U16-S6-P6转换为16-06-06

我想使用以下规则将这些字符转换为8个字符:

  • 适当时删除U和前缀0
  • 在适当的情况下删除S和前缀0
  • 在适当的情况下删除P和前缀0

我相信有一种方法可以使用IF、FIND和MID函数在Excel中转换这些内容,但不知道如何开始。任何帮助都将不胜感激。

好吧,这可以处理案例2,但不处理P14或U16,但您可以进一步

=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(RIGHT(A1,LEN(A1)-FIND("U",A1,1)+1),"U",0),"S",0),"P",0)
假设数据位于单元格A1到A3中,只需向下拖动即可。但是非常野蛮的力量


我使用了以下公式,从WS-S5-S-L1-C31-F-U5-S9-P14列返回“05”。但我如何返回“05-09-14”=如果(MID(E13,FIND(“-U”,E13)+3,1)=“-”,“0”和MID(E13,FIND(-U,E13)+2,1),MID(E13,FIND(-U,E13)+2,2))使用了很好的技术,但不幸的是,代码没有处理您提到的三个字符。@Indy我把它留给您来进一步研究-应该提高您的技能。。。