Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel для Интернета Excel 2021 Excel 2021 для Mac Excel 2019 Excel 2019 для Mac Excel 2016 Excel 2016 для Mac Excel 2013 Excel 2010 Excel 2007 Excel для Mac 2011 Excel Starter 2010 Еще…Меньше
В этой статье описаны синтаксис формулы и использование функции ДЕС.В.ШЕСТН в Microsoft Excel.
Описание
Преобразует десятичное число в шестнадцатеричное.
Синтаксис
ДЕС.В.ШЕСТН(число;[разрядность])
Аргументы функции ДЕС.В.ШЕСТН описаны ниже.
-
Число — обязательный аргумент. Преобразуемое десятичное число. Если оно отрицательное, то разрядность игнорируется и функция ДЕС.В.ШЕСТН возвращает 10-значное (40-битное) шестнадцатеричное число, в котором самый старший бит является знаковым битом. Остальные 39 бит являются битами значения. Отрицательные числа представляются в дополнительных кодах.
-
Разрядность Необязательный. Количество знаков в записи числа. Если разрядность опущена, функция ДЕС.В.ШЕСТН использует минимально необходимое количество знаков. Разрядность используется, чтобы приписать возвращаемому значению ведущие нули.
Замечания
-
Если число < -549 755 813 888 или число > 549 755 813 887, то DEC2HEX возвращает #NUM! значение ошибки #ЗНАЧ!.
-
Если число не является числом, то DEC2HEX возвращает #VALUE! значение ошибки #ЗНАЧ!.
-
Если для результата DEC2HEX требуется больше количества знаков Знаков знаков Знаков после заданного числа знаков Знаков после заданного числа знаков, возвращается #NUM! значение ошибки #ЗНАЧ!.
Например, DEC2HEX(64;1) возвращает значение ошибки, так как для результата (40) требуется два знака. -
Если значение аргумента «разрядность» не является целым числом, оно усекается.
-
Если число не является числом, то DEC2HEX возвращает #VALUE! значение ошибки #ЗНАЧ!.
-
Если «количество» отрицательное, то DEC2HEX возвращает #NUM! значение ошибки #ЗНАЧ!.
Пример
Скопируйте образец данных из следующей таблицы и вставьте их в ячейку A1 нового листа Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — клавишу ВВОД. При необходимости измените ширину столбцов, чтобы видеть все данные.
Формула |
Описание |
Результат |
=ДЕС.В.ШЕСТН(100;4) |
Преобразует десятичное число 100 в шестнадцатеричное из 4 знаков (с «приписанными» двумя ведущими нулями). |
0064 |
=ДЕС.В.ШЕСТН(-54) |
Преобразует десятичное значение -54 в шестнадцатеричное |
FFFFFFFFCA |
=ДЕС.В.ШЕСТН(28) |
Преобразует десятичное значение 28 в шестнадцатеричное. |
1C |
=ДЕС.В.ШЕСТН(64;1) |
Возвращает #NUM! из-за того, что для результата (40) требуется 2 знака. |
#ЧИСЛО! |
Нужна дополнительная помощь?
Я хотел бы отформатировать ячейку в Microsoft Excel 2007 в шестнадцатеричном формате, но я не нашел, как это сделать.
Есть ли встроенный способ изменить базу с 10 на 16 для клетки?
Ответы:
Как упоминалось ранее, формула = DEC2HEX (A1) преобразуется в шестнадцатеричный код, а DEC2HEX (A1,8) преобразуется в шестнадцатеричный с префиксом 0 для обозначения 32 битов. Хотя добавление начальных 0 делает числа более читабельными, особенно если вы используете шрифт с фиксированной запятой, шестнадцатеричная и десятичная версии могут смешиваться, когда все цифры в номере оказываются 0-9 (например, 327701 = 50015).
Улучшение заключается в добавлении префикса «0x». Есть 2 способа сделать это. = «0x» & DEC2HEX (A1,8) добьется цели, но изменит поле на текстовое поле, поэтому его уже нельзя будет легко использовать в формулах. Другой способ — использовать пользовательский формат. Если вы примените пользовательский формат «0x» @ к ячейке, тогда значение ячейки все еще может быть использовано в уравнении. Примеры:
╔═══╦════════════════╦════════════╦═══════════════ ══════════════╦═══════════════╗ ║ ║ A ║ B ║ ║ ║ ╠═══╬════════════════╬════════════╬═══════════════ ══════════════╬═══════════════╣ ║ 1 ║ ║ Значение ║ Соответствующая формула ║ Числовой формат ║ ║ 2 ║ Десятичное число ║ 11162790 ║ 11162790 ║ Общее ║ ║ 3 ║ Hex ║ AA54A6 ║ = DEC2HEX (B2) ║ Общие сведения ║ ║ 4 ║ ведущие 0 ║ 00AA54A6 ║ = DEC2HEX (B2,8) ║ Общие сведения ║ ║ 5 ║ Текстовый префикс 0x ║ 0x00AA54A6 ║ = DEC2HEX (B2,8) ║ "0x" @ ║ ║ 6 ║ Текстовый префикс 0x ║ 0x00AA54A6 ║ = "0x" & DEC2HEX (B2,8) ║ Общие сведения ║ ║ 7 ║ Использовать B5 ║ AA54A600 ║ = DEC2HEX (HEX2DEC (B5) * 256) ║ Общие сведения ║ ║ 8 ║ Использовать B5 ║ 0xAA54A600 ║ = DEC2HEX (HEX2DEC (B5) * 256) ║ «0x» @ ║ ║ 9 ║ Попробуйте использовать B6 ║ #NUM! ║ = DEC2HEX (HEX2DEC (B6) * 256) ║ Общие сведения ║ ╚═══╩════════════════╩════════════╩═══════════════ ══════════════╩═══════════════╝
Однако большие числа с разными цифрами все еще трудно читать, поэтому я предпочитаю ставить запятые в десятичные числа, а «_» — в шестнадцатеричные числа. Сначала вам нужно получить верхний и нижний 16 бит числа. Старшие 16 бит 32-битного числа могут быть получены с помощью = INT (A1 / 2 ^ 16). Деление на 2 ^ 16 действует как сдвиг вправо на 16 бит, а INT удаляет дробный остаток. MOD может использоваться для получения младших 16 бит любого 32- или 64-битного числа; = MOD (A1, 2 ^ 16). Мод эффективно возвращает остаток, то есть младшие 16 бит. Вот таблица, которая показывает это в действии.
╔═══╦═════════════╦═══════════════╦═══════════════ ═════════════════════╦═════════╗ ║ ║ A ║ B ║ ║ ║ ╠═══╬═════════════╬═══════════════╬═══════════════ ═════════════════════╬═════════╣ ║ 1 ║ ║ Значение ║ Соответствующая формула ║ Формат ║ ║ 2 ║ Десятичное число ║ 3 098 743 209 ║ 3098743209 ║ #, ## 0 ║ ║ 3 ║ старшие байты ║ B8B3 ║ = DEC2HEX (INT (B2 / 2 ^ 16), 4) ║ общие сведения ║ ║ 4 ║ младшие байты ║ 11A9 ║ = DEC2HEX (MOD (B2, 2 ^ 16)) ║ общие сведения ║ ║ 5 ║ Полное число ║ 0xB8B3_11A9 ║ = "0x" & DEC2HEX (INT (B2 / 2 ^ 16), 4) ║ Общее ║ "║ ║ ║ &" _ "и DEC2HEX (MOD (B2, 2 ^ 16), 4) ║ ║ ╚═══╩═════════════╩═══════════════╩═══════════════ ═════════════════════╩═════════╝
Кстати, я должен поблагодарить https://ozh.github.io/ascii-tables/ . Я использовал эту ссылку для создания текстовых таблиц ASCII. Я просто скопировал таблицу из моей таблицы Excel в ее раздел ввода, и она автоматически создала красивую разметку текста в юникоде.
Если вы хотите отформатировать ячейку, чтобы можно было ввести десятичное число и автоматически отобразить ее в виде шестнадцатеричного числа, то это невозможно. Вы можете форматировать ячейки в виде текста и введите число шестнадцатеричного непосредственно (но обратите внимание , что Excel не может использовать те , для расчетов), или использовать DEC2HEX()
и HEX2DEC()
функцию для преобразования между основанием 10 и основанием 16.
Если ячейка для преобразования является A1
использование =DEC2HEX(A1)
.
Если вам нужно выполнить математические операции с числами, преобразованными в шестнадцатеричные числа, сначала преобразуйте их в десятичные числа, выполните операцию, а затем верните обратно в шестнадцатеричное число.
Например, если ячейка A1
имеет шестнадцатеричное число, например, созданное по этой формуле:
=DEC2HEX(17)
который будет отображаться как 11, и ячейка A2
имеет формулу:
=DEC2HEX(165)
который будет отображаться как A5
, и вы хотите добавить их вместе, тогда эта формула получит желаемый результат:
=DEC2HEX(HEX2DEC(A1)+HEX2DEC(A2))
который будет отображаться как B6
=REPT("0",4-LEN(DEC2HEX(B3)))&DEC2HEX(B3)
Формула REPT повторяет «0» в зависимости от длины шестнадцатеричной строки, сгенерированной путем преобразования ее из десятичной, и требуемой длины строки HEX. В этом примере я хочу сгенерировать строки HEX длиной 4.
Затем вы объединяете ведущие нули в фактическую строку HEX, тем самым генерируя значение HEX желаемой длины.
Преимущества:
- Простое копирование формулы в другой лист. Только две ссылки на ячейку для десятичного значения, B3, для переназначения.
- Результаты этой формулы обрабатываются Excel как значения HEX. Вы также можете добавить префикс «0x», но я не считаю это необходимым.
Примечание: я использую это, когда копирую строки HEX, и они копируются с различной длиной. Сначала я генерирую столбец десятичных значений из исходных значений, с которыми затем могу запустить эту формулу.
Вот решение, которое я нашел, чтобы убедиться, что я могу отформатировать эти шестнадцатеричные числа в формат HTML:
SWITCH(LEN(DEC2HEX(B6)),1,"000"&DEC2HEX(B6),2,"00"&DEC2HEX(B6),3,"0"&DEC2HEX(B6),4,DEC2HEX(B6))
As mentioned earlier, the formula =DEC2HEX(A1) converts to hex, and DEC2HEX(A1,8) converts to hex with 0 prefix to denote 32 bits. While adding the leading 0’s makes the numbers more readable, especially if you use a fixed point font, the hex and decimal versions can get mixed up when all of the digits in the number happen to be 0-9 (e.g. 327701=50015).
An improvement is to add the «0x» prefix. There are 2 ways to do this. =»0x»&DEC2HEX(A1,8) will do the trick, but it changes the field to a text field, so it can no longer easily be used in formulas. Another method is to use a custom format. If you apply the custom format «0x»@ to the cell, then the value of the cell can still be used in an equation. Examples:
╔═══╦════════════════╦════════════╦═════════════════════════════╦═══════════════╗ ║ ║ A ║ B ║ ║ ║ ╠═══╬════════════════╬════════════╬═════════════════════════════╬═══════════════╣ ║ 1 ║ ║ Value ║ Corresponding Formula ║ Number Format ║ ║ 2 ║ Decimal ║ 11162790 ║ 11162790 ║ General ║ ║ 3 ║ Hex ║ AA54A6 ║ =DEC2HEX(B2) ║ General ║ ║ 4 ║ leading 0's ║ 00AA54A6 ║ =DEC2HEX(B2,8) ║ General ║ ║ 5 ║ Text 0x prefix ║ 0x00AA54A6 ║ =DEC2HEX(B2,8) ║ "0x"@ ║ ║ 6 ║ Text 0x prefix ║ 0x00AA54A6 ║ ="0x" & DEC2HEX(B2,8) ║ General ║ ║ 7 ║ Use B5 ║ AA54A600 ║ =DEC2HEX(HEX2DEC(B5) * 256) ║ General ║ ║ 8 ║ Use B5 ║ 0xAA54A600 ║ =DEC2HEX(HEX2DEC(B5) * 256) ║ "0x"@ ║ ║ 9 ║ Try to use B6 ║ #NUM! ║ =DEC2HEX(HEX2DEC(B6) * 256) ║ General ║ ╚═══╩════════════════╩════════════╩═════════════════════════════╩═══════════════╝
However, large numbers with varying digits can still be hard to read, so I like to put commas into decimal numbers and «_»s into hex numbers. First you need to get the upper and lower 16 bits of the number. The upper 16 bits of a 32-bit number can be retrieved with = INT( A1 / 2^16 ). Dividing by 2^16 acts like a right shift of 16 bits, and the INT removes the fractional remainder. MOD can be used to get the lower 16 bits of any 32 or 64-bit number; =MOD(A1, 2^16). The MOD effectively gets the remainder back, which is the lower 16 bits. Here is a table that shows this in action.
╔═══╦═════════════╦═══════════════╦════════════════════════════════════╦═════════╗ ║ ║ A ║ B ║ ║ ║ ╠═══╬═════════════╬═══════════════╬════════════════════════════════════╬═════════╣ ║ 1 ║ ║ Value ║ Corresponding Formula ║ Format ║ ║ 2 ║ Decimal ║ 3,098,743,209 ║ 3098743209 ║ #,##0 ║ ║ 3 ║ Upper Bytes ║ B8B3 ║ =DEC2HEX(INT( B2/2^16 ), 4) ║ General ║ ║ 4 ║ Lower Bytes ║ 11A9 ║ =DEC2HEX(MOD( B2, 2^16 )) ║ General ║ ║ 5 ║ Full Number ║ 0xB8B3_11A9 ║ ="0x" & DEC2HEX(INT( B2/2^16 ), 4) ║ General ║ ║ ║ ║ ║ & "_" & DEC2HEX(MOD(B2, 2^16), 4) ║ ║ ╚═══╩═════════════╩═══════════════╩════════════════════════════════════╩═════════╝
BTW, I have to give a big thanks to https://ozh.github.io/ascii-tables/. I used that link to create the ASCII text tables. I just copied the table from my excel spreadsheet into its Input section and it automatically created the nice unicode text layout.
Изучим стандартные способы перевода чисел в различные системы счисления в Excel: двоичную, восьмеричную, десятичную и шестнадцатеричную.
Помимо повсеместно распространенной и всем нам хорошо известной десятичной системы счисления также используются и системы с другими основаниями (отличными от 10), например, двоичная, троичная, восьмеричная и т.д.
Большинство из них имеют достаточно широкое применение практически во всех современных электронных устройствах, в программировании или компьютерной документации.
В Excel есть возможность стандартными средствами переводить данные в четырех системах счисления:
Давайте подробно остановимся на основных вариантах преобразования данных.
Перевод числа из десятичной в двоичную систему в Excel
Для преобразования данных в двоичную запись в Excel существует стандартная функция ДЕС.В.ДВ (имя функции получается как первые буквы от слов ДЕСятичное В ДВоичное, дополнительно разделенное точками):
ДЕС.В.ДВ(число; [разрядность])
Преобразует десятичное число в двоичное.
- Число (обязательный аргумент) — десятичное целое число, которое требуется преобразовать;
- Разрядность (необязательный аргумент) — количество знаков для использования в записи.
Данный аргумент необходим если нужно приписать к двоичной записи данных ведущие нули. К примеру, число 1101 с разрядностью 7 будет иметь вид 0001101.
Обратите внимание, что Excel накладывает определенные ограничения на размер преобразуемых данных.
Двоичная запись не должна занимать более 10 знаков, поэтому десятичное число, соответственно, не должно быть больше 511 или меньше -512, иначе в качестве значения функция ДЕС.В.ДВ вернет ошибку.
Перевод числа из двоичной в десятичную систему в Excel
Для осуществления обратного перевода можно воспользоваться функцией ДВ.В.ДЕС:
ДВ.В.ДЕС(число)
Преобразует двоичное число в десятичное.
- Число (обязательный аргумент) — двоичное число, которое требуется преобразовать.
При этом разрядность в качестве аргумента функции для десятичной записи не используется.
Как и в случае с функцией ДЕС.В.ДВ при использовании ДВ.В.ДЕС существует ограничение на размер преобразуемых данных — не более 10 знаков в записи, в ином случае функция вернет значение ошибки.
Перевод в других системах счисления
Для других систем счисления (восьмеричной, шестнадцатеричной) также определен набор стандартных формул.
Для удобства мы составили таблицу со схемой выбора формулы для преобразования данных (в левом столбце указано откуда переводим данные, в верхней строчке — куда переводим):
Как и в примерах выше имена функций образуются по достаточно простому правилу — берутся первые буквы от названий систем в которых преобразуются данные и разделяются точками (ВОСЬМеричное В ШЕСТНадцатеричное и пр.)
Арифметические операции с данными
Операции в Excel осуществляются в десятичной системе счисления, поэтому при применении арифметических действий (сложение, вычитание и т.д.) для преобразованных данных учитывайте, что конечный результат также будет записан в десятичной записи:
Чтобы избежать подобной проблемы, необходимо сначала перевести все данные в десятичный вид, произвести требуемые вычисления, а уже затем вновь преобразовать полученный результат в исходную систему счисления:
Удачи вам и до скорых встреч на страницах блога Tutorexcel.ru!
Поделиться с друзьями:
Поиск по сайту:
Собсбвенно задача преобразовать из текстовой строки, описывающей число в 16тиричной кодировке (2-12) разрядов получить десятичное число для выполнения матопераций, а затем результат опять перегнать в 16тиричное представление и текстовый формат. Что-то весь хелп облазил — не нашел, только десятичное похоже представление обрабатывается. Может какие-то готовые макросы/плагины… есть ?
Макрос на бейсике, оформить в виде пользовательской функции. (точнее, двух — прямой и обратной)
Перевод туда и обратно: Формула =ДЕС.В.ШЕСТН(ШЕСТН.В.ДЕС(D33) * ШЕСТН.В.ДЕС(A33))?
Напимер, тупо вот такая функция:
Function hex2dec(hhh)
Dim d As Double, n As Integer
d = 0
hhh = trim(hhh) ‘удаляет пробелы с обеих сторон
For n = Len(hhh) To 1 Step -1
d = d + (Val(«&h» & Mid$(hhh, n, 1)) * (16 ^ (Len(hhh) — n)))
Next
hex2dec = d
End Function
На входе строка hhh, изображающая шестнадцатерическое число (например, ffffffffffff ), на выходе результат (в данном случае выдаст 2,81475E+14)
Только ужо Вам самому придется следить, чтобы на вход не попали некорректные данные. Например, «qwerty» будет переведено как 57344, то есть, воспринято как шестнадцатеричное 00e000
И еще никак не могу вспомнить, как сделать чтобы эта функция сохранилась в эксцэле навсегда в списке функций.
Wladimir_TS: Что-то весь хелп облазил — не нашел, только десятичное похоже представление обрабатывается
Мастак абсолютно прав: есть встроенные функции, они указаны в хелпе (ищутся по ключевому слову).
Функция ШЕСТН.В.ДЕС
Преобразует шестнадцатеричное число в десятичное.
Синтаксис
ШЕСТН.В.ДЕС(число)
Число — преобразуемое шестнадцатеричное число. Число не может содержать более 10 разрядов (40 бит). Самый старший бит числа является знаковым битом. Остальные 39 бит являются битами значения. Отрицательные числа записываются в дополнительных кодах.
kav: kav
Функция ШЕСТН.В.ДЕС
Преобразует шестнадцатеричное число в десятичное.
Хоть оно мне и не надо, попробовал. Результат — в хелпе есть, а когда скопипастил, как советует хелп, в ячейку, ругается : #ИМЯ. И в списке поддерживаемых функций нет.
Excel2003.
Хорошо, что оно мне не надо
а опознать буковку и в отдельной табличке «справочник» сделать, сравнить с табличкой и вернуть в десятичной, провести мат операцию, сравнить с табличкой и вернуть 16ичное?
Bul_d_Ozer: в списке поддерживаемых функций нет.
Установить из дистрибутива.
Mastak: Установить из дистрибутива.
Да ну его… Ексель использую только для ведения «булгахтерии». Для серьезных вещей Дельфи удобнее.
Mastak: Mastak ◊
30 марта, 13:30
Bul_d_Ozer: в списке поддерживаемых функций нет.
Установить из дистрибутива.
И где оно там ? Или это какое-то дополнение.
Bul_d_Ozer: Bul_d_Ozer ◊
31 марта, 00:07
Mastak: Установить из дистрибутива.
Да ну его… Ексель использую только для ведения «булгахтерии». Для серьезных вещей Дельфи удобнее.
Дюже сложно увы.
Mike Пользователь Сообщений: 521 |
Доброго всем дня! https://www.planetaexcel.ru/forum/?PAGE_NAME=read&FID=8&TID=33314 , но ничего не понял…комментариев мало |
buchlotnik Пользователь Сообщений: 3863 Excel 365 Бета-канал |
del Изменено: buchlotnik — 21.08.2021 23:18:19 Соблюдение правил форума не освобождает от модераторского произвола |
Mike Пользователь Сообщений: 521 |
При переносе формулы в другую книгу пишет #ИМЯ? естественно ввод делал через массив (Ctrl+Shift+Enter) |
andylu Пользователь Сообщений: 274 |
#4 23.07.2021 10:37:02
на всякий случай уточню — у вас эксель 365? |
||
buchlotnik Пользователь Сообщений: 3863 Excel 365 Бета-канал |
del Изменено: buchlotnik — 21.08.2021 23:18:06 Соблюдение правил форума не освобождает от модераторского произвола |
Mike Пользователь Сообщений: 521 |
#6 23.07.2021 11:28:02
У меня 2016 |
||||
Mike Пользователь Сообщений: 521 |
#7 23.07.2021 11:31:13
не прокатывает Изменено: Mike — 23.07.2021 11:32:11 |
||||||||
buchlotnik Пользователь Сообщений: 3863 Excel 365 Бета-канал |
#8 23.07.2021 11:43:19
и в чём сюрприз?
Соблюдение правил форума не освобождает от модераторского произвола |
||||
Mike Пользователь Сообщений: 521 |
#9 23.07.2021 11:55:02
почему-то также пишет #ИМЯ? |
||||
buchlotnik Пользователь Сообщений: 3863 Excel 365 Бета-канал |
#10 23.07.2021 12:00:08
Соблюдение правил форума не освобождает от модераторского произвола |
||||
Mike Пользователь Сообщений: 521 |
#11 23.07.2021 12:13:41
СЦЕП() — это СЦЕПИТЬ() ? если так, то ошибка пропала, но «перевод» осуществляет только первого символа (в ячейке получается «С8») |
||||
buchlotnik Пользователь Сообщений: 3863 Excel 365 Бета-канал |
нет, СЦЕП() — это СЦЕП(), функция из 2019 версии Соблюдение правил форума не освобождает от модераторского произвола |
andylu Пользователь Сообщений: 274 |
/dell pls, пока писал вышел аналог ответа 12 выше Изменено: andylu — 23.07.2021 12:27:02 |
buchlotnik Пользователь Сообщений: 3863 Excel 365 Бета-канал |
del Изменено: buchlotnik — 21.08.2021 23:17:39 Соблюдение правил форума не освобождает от модераторского произвола |
Mike Пользователь Сообщений: 521 |
|
vikttur Пользователь Сообщений: 47199 |
#16 24.07.2021 12:35:05 Mike, приведите в порядок свои сообщения. Цитата — это не то, что Вы думаете и делаете. Вы бездумно копируете. |
-
Excel 365
-
Excel 2021
-
Excel 2019
-
Excel 2016
-
February 12, 2022 -
No Comments
It’s unusual to need to work with Hexadecimal values in Excel, but on these rare occasions it can be challenging to figure out how Excel deals with values of this kind. If you simply enter a value like 0xABCDEF78 Excel will treat it as text and won’t recognize it as a numeric value.
What is Hexadecimal?
Hexadecimal (or Hex for short) is a counting system that uses 16 symbols as opposed to the 10 symbols used in the Decimal counting system that we use more often. Hexadecimal uses the letters A-F as well as the numbers 0-9.
Hexadecimal is most often used by computer systems, though it is also used in some advanced mathematical calculations outside of the world of computing.
Converting Hexadecimal values to Decimal in Excel
Excel won’t recognize a Hexadecimal value, but there is a function in its function library that will convert Hexadecimal values into Decimals: the HEX2DEC function.
For example: =HEX2DEC(“FF”) will return 255 – the decimal conversion of the Hexadecimal value FF.
If you’re unfamiliar with Excel functions and formulas you might benefit from our completely free Basic Skills E-book, which will introduce you to the basics of formulas and functions.
Dealing with 0x prefixes
Many programming languages prefix Hexadecimal values with 0x. For example 0xFF instead of just FF.
The HEX2DEC function won’t recognize a Hex value that has a 0x prefix so you will need to strip away the prefixes before you can convert the values.
There are a few different ways you could do this, including Flash Fill, Text To Columns and even Find & Replace, but a formula offers the most long-term solution because it will automatically recalculate. This formula will remove the 0x prefixes:
=RIGHT(A2,LEN(A2)-2)
All of the options mentioned above (as well as the RIGHT and LEN functions) are explained in depth in our Expert Skills Books and E-books.
A working example
You can download an example workbook showing the above functions and formulas in action.
Other counting systems supported by Excel
As well as the HEX2DEC function for Hex values, Excel also contains functions to convert values from Binary (Base 2) and Octal (Base . These are supported by the BIN2DEC and OCT2DEC.
There are also functions to convert each of these counting systems to the other. For example you can convert an Octal value into a Hex value using the OCT2HEX function.
These are the only up-to-date Excel books currently published and includes the new Dynamic Arrays features.
They are also the only books that will teach you absolutely every Excel skill including Power Pivot, OLAP and DAX.
Some of the things you will learn
Share this article
Recent Articles
Leave a Reply
Перейти к содержимому
Системы исчисления в программе «Эксель».
В мире существует множество различных способов записи чисел и систем исчисления. В текущем столетии самыми популярными являются системы исчисления:
• Двоичная;
• Восьмеричная;
• Десятеричная;
• Шестнадцатеричная.
Программа «Excel» предусматривает возможность обработки информации в этих системах.
Для удобства перевода чисел из различных систем в привычную большинству пользователей десятеричную систему, а так же перевода чисел между восьмеричной, двоичной, шестнадцатеричной системами существует целый ряд функций. Эти функции позволяют произвести перевод чисел из одной системы в другую.
Рассмотрим эти функции:
• ДЕС.В.ДВ( ) – переводит десятичные числа в двоичные;
• ДЕС.В.ВОСЬМ( ) – переводит десятичные числа в восьмеричные;
• ДЕС.В.ШЕСТН( ) – переводит десятичные числа в шестнадцатеричные;
• ВОСЬМ.В.ДВ() – переводит восьмеричные в двоичные;
• ВОСЬМ.В.ДЕС() – переводит восьмеричные десятичные;
• ВОСЬМ.В.ШЕСТН() – переводит восьмеричные в шестнадцатеричные;
• ШЕСТН.В.ВОСЬМ() – переводит шестнадцатеричные в восьмеричные;
• ШЕСТН.В.ДВ() – переводит шестнадцатеричные в двоичные;
• ШЕСТН.В.ДЕС() – переводит шестнадцатеричные в десятичные;
• ДВ.В.ВОСЬМ() – переводит двоичные в восьмеричные;
• ДВ.В.ДЕС() – переводит двоичные в десятичные;
• ДВ.В. ШЕСТН() – переводит двоичные в шестнадцатеричные.
Пример использования:
• Установить курсор в ячейку, которой будет присвоено значение;
• Выбрать необходимую функцию при помощи мастера функций в зависимости от того в какую систему исчисления вы хотите перевести число;
• В появившемся окне указать ячейку с переводимым числом или прописать само число;
• Указать количество разрядов – количество знаков в написании числа при необходимости (для функций перевода в десятичную систему количество разрядов не указывается).
• Нажать «Enter» или «Ok».
Скачать таблицу перевода чисел между двоичной, восьмеричной, десятеричной и шестнадцатеричной системами исчисления.