我正在尝试转换具有标准格式 0000-A-00000-00-00 的属性 ID 号列表,其中我的工作表包含各种组合
1-A-123
10-B-1234
理想情况下,它们应该读如下
0001-A-00123-0000-00
0010-B-01234-0000-00
我尝试过使用自定义数字格式,但它不喜欢数字中间的字母。我不知道我唯一的选择是不是把它们分开然后再重新组合起来。
我会接受一个解决方案,即仅将前导零放在数字前面(最多 4 个字符),因此结果可能看起来像 0001-A-123
答案1
你可以使用超级公式或 VBA 来实现这一点
将 A1 中的数据重新剪切为 B1 中所需的输出
=IFERROR(REPT("0",4-FIND("-",A1)+1)&LEFT(A1,FIND("-",A1)-1)&"-"&MID(A1,FIND("-",A1,FIND("-",A1)+1)-1,1)&"-"&REPT(0,5-LEN(RIGHT(A1,LEN(A1)-FIND("-",A1,FIND("-",A1)+1))))&RIGHT(A1,LEN(A1)-FIND("-",A1,FIND("-",A1)+1))&"-0000-00","missing -")
答案2
您必须将它们分开(分成 3 块),然后使用字符串函数将它们重新组合起来。
像这样:https://docs.google.com/spreadsheet/ccc?key=0AqyHjJ0rl5d1dHgxNFlNVWd2Njd2cDVBaEtwWGxfU1E
答案3
将电子表格保存为 CSV,使用智能文本编辑器(例如vi
)进行编辑,然后读回到 Excel 中。