В настоящее время работаю над таблицей 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 цифр, используя абсолютную ссылку
Выполните поиск всех 16-битных значений из таблицы шага 2.
Например, для вашего 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 символов.Теперь вы объединяете все 48 цифр, найденных из 16 цифр, объединяя их с помощью формулы конкатенации, например.
Digit1&Digit2&Digit3&.......&Digit16
.Это даст вам искомую строку длиной 48 теперь в двоичном формате.
Скопируйте формулу вниз по строкам, чтобы получить желаемые результаты.