我需要一列来显示以下文本:prxyz,(此处为data1),0699,ABCD(此处为data2),xxx
数据1在A列,数据2在B列。
数据 1 的格式需要为 5 个数字(有时以零开头)。对于数据 2,他们需要输入 9 位数字长且以字母结尾的数据。如果他们只输入 9 位数字,则字母需要自动替换为 0(零)。
例如我在 A1 中输入“123”,在 A2 中输入“12345”,在 B1 中输入“123456789”,在 B2 中输入“987654321Z”,则输出结果需要为:
| A | B | C
1| 00123 | 123456789 | prxyz,00123,0699,ABCD1234567890,xxx
2| 12345 | 987654321Z | prxyz,12345,0699,ABCD987654321Z,xxx
我已将 A 列格式化为自定义格式 00000,以便始终显示 5 位数字。但我卡在了 B 列和 C 列。
这是我想出的但它不正确:="prxyz,"&A1&",0699,"&"ABCD"&B1&",xxx"
请帮忙?有想法吗?
答案1
="prxyz,"&TEXT(A1,"00000")&",0699,ABCD"&IF(LEN(B1)=9,B1*10,B1)&",xxx"
答案2
要计算前导零,可以使用 TEXT 公式:
="rxyz,"&TEXT(A1,"00000")& ...
我必须考虑你的 B 栏。
答案3
有一种方法可以使用类似于 ="prxyz,"&A1&",0699,"&"ABCD"&B1&",xxx" 的语法,但我不建议这样做。而是在某个地方(同一张表或其他表)创建数据掩码:
|F |G| H |I| J
1|Data Mask: | |
2|prxyz,|A|,0699,ABCD|B|,xxx
设置数据掩码后,使用如下公式:
=$F$2&A1&$H$2&B1&$J$2
其中 $F$2 等是您屏蔽的单元格,而 A1 和 B1 是您输入的数据。这样,当您扩展表格时,它将自动计算。
似乎有人在数据验证部分抢先了一步。如果您仍然遇到问题,我可以上传电子表格。
编辑:对于 B 列;如果字母始终相同,最好从数字中删除所有字母,并将其添加到下一个数据掩码条目中。即使它们不同,删除字母然后再添加回来可能更容易,以确保您不会遗漏任何字母。
答案4
=CONCATENATE("prxyz,", A1,",","0699",",","ABCD",B2,"xxx");
在 A、B 列中输入值,然后在 C 列中输入上述公式;
接下来,将选定公式单元格右下角的黑色实心方块向下拖动
您将获得包含文本和数字值的 A 和 B 的所有连接单元格。
要分别获取值,请复制连接的单元格并在另一张表中选择性粘贴
选择“值”单击确定。