给定一个带有文本的单元格,我需要一个公式来输出该文本字符串中每个字符的 ascii 代码序列。
示例(以空格作为分隔符:输入 -> 输出
我能找到的最接近的代码示例是这里 :
=SUM(CODE(MID(C1,ROW(INDIRECT("1:"&LEN(C1))),1)))
使用数组公式=SUMPRODUCT(CODE(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1)))
避免了数组公式在上述两种情况下,我无法调整示例以使用 CONCATENATE 将各个片段连接成 Ascii 代码序列。
如果您有 Office 365:
=TEXTJOIN(" ",,CODE(MID(A1,SEQUENCE(LEN(A1)),1)))
或
= ARRAYTOTEXT(CODE(MID(A1,SEQUENCE(LEN(A1)),1)),0)
对于
Excel 2016
,基于公式的解决方案仅适用于包含不超过 5 个字符的字符串,即:
=TRIM(SUBSTITUTE(SUBSTITUTE(TEXT(SUMPRODUCT(10^(15-3*(ROW(INDEX(A:A,1):INDEX(A:A,LEN(A1)))-1))*CODE(MID(A1,ROW(INDEX(A:A,1):INDEX(A:A,LEN(A1))),1))),REPT(" 000",6))," 00"," ")," 0"," "))
否则,您将需要
VBA
。
=TEXTJOIN("", TRUE, 代码(MID(A2, ROW(间接("1:15")), 1)))