目前正在处理 Excel 电子表格,我需要自动将 16 位八进制数字转换为 48 位字符。我正在尝试自动处理大约 27,000 多行的数据。
例子。
6401034316154000 = 110100000001000011100011001110001101100000000000
6401034651710000 = 110100000001000011100110101001111001000000000000
6401034646734000 = 110100000001000011100110100110111011100000000000
6401034312554000 = 110100000001000011100011001010101101100000000000
先感谢您
答案1
B1=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A1,"0","000"),"1","001"),"2","010"),"3","011"),"4","100"),"5","101"),"6","110"),"7","111")
A1必须是字符串类型值。
答案2
首先准备一个二进制数表,最多 8 个,如下所示,分为 2 列,以便替换八进制数的二进制值,如下所示
0, 000---; 1, 001---;2,010---; 3, 011---;4, 100---;5,101---;6, 110---;7,111
. 假设表格位于单元格中V4:W11
。对于 16 位数字中的每一位,使用垂直查找公式获取位的值并将其放在单元格中。使用绝对引用复制所有 16 位数字的公式
从步骤 2 的表中完成所有 16 位值搜索。
例如,对于给定的 16 位数字,第一位数字的垂直查找值
6
=110
,( =Vlookup(digit,$V$4:$W$11,2)..(Value is in Second Column of the Table) )
第二位数字,4 = 100
第三位数字0=000
,第四位数字1
,001
依此类推,所有 16 个字符。现在,您可以使用连接公式将从 16 位数字中找到的所有 48 位数字组合起来,例如
Digit1&Digit2&Digit3&.......&Digit16
。。这将为您提供二进制长度为 48 的所需字符串。
沿行复制公式以获得所需结果。