以尾随零为前缀的字母代码格式

问题描述 投票:0回答:2

我有一个特定的代码系统,用于控制仓库中电子产品的当前余额。 每件作品都有自己的代码,格式如下:TYPE-000001

TYPE 是一个 4 个字母的代码,定义了设备的类型,然后它的前面包含一个 6 位数字。

我只想输入“type1”并让它填充“TYPE-000001”。我可以使用自定义格式实现此目的还是必须走 VB 路线?

我发现

-000000
可以很好地处理尾随零,但我找不到添加文本的方法。

excel format
2个回答
1
投票

正如 Ike 所评论的那样,您需要 VBA 在输入输入值的同一单元格中实现这一点。如果您可以在另一个单元格中使用该值,则可以使用此公式,其中 A1 指您的输入值(“type1”)。

=UPPER(LEFT(A1,4))
    &"-"
    &TEXT(
        MID(A1,5,255),
        "000000"
    )

0
投票

不,没有办法使用自定义格式来实现它。 要么使用公式并在不同的单元格中处理结果(即由@Thomas Lilleng提供),要么使用

VBA

此短代码会将

A1:A20
范围内输入的文本转换为您所需的格式:

Private Sub Worksheet_Change(ByVal Target As Range)
    If Intersect(Target, Range("A1:A20")) Is Nothing Or Target.Cells.Count > 1 Then Exit Sub
    Application.EnableEvents = False
    Target.Value = Left(Target.Value, 4) & "-" & Format(Mid(Target.Value, 5, 1000), "000000")
    Application.EnableEvents = True
End Sub

将其工作表代码放在 Microsoft Excel 对象下。

结果:

© www.soinside.com 2019 - 2024. All rights reserved.