Как в excel получить дополнительный код

Обновлено: 05.07.2024

Поздравляю! Вы добрались до конца первой недели марафона 30 функций Excel за 30 дней, изучив вчера функцию FIXED (ФИКСИРОВАННЫЙ). Сегодня мы немного расслабимся и займёмся функцией, у которой не так много примеров использования – это функция CODE (КОДСИМВ). Она может работать вместе с другими функциями в длинных и сложных формулах, но сегодня мы сосредоточимся на том, что она может делать самостоятельно в простейших случаях.

Итак, давайте разберёмся со справочной информацией по функции CODE (КОДСИМВ) и рассмотрим варианты её применения в Excel. Если у Вас есть подсказки или примеры использования – делитесь ими в комментариях.

Функция 07: CODE (КОДСИМВ)

Как можно использовать функцию CODE (КОДСИМВ)?

Функция CODE (КОДСИМВ) позволяет найти ответ на следующие вопросы:

  • Какой скрытый символ таится в конце импортированного текста?
  • Как я могу ввести специальный символ в ячейку?

Синтаксис CODE (КОДСИМВ)

Функция CODE (КОДСИМВ) имеет такой синтаксис:

  • text (текст) – это текстовая строка, код первого символа которой Вы хотите получить.

Ловушки CODE (КОДСИМВ)

Результаты, возвращаемые функцией в разных операционных системах, могут отличаться. Коды символов ASCII (с 32 по 126) в большинстве своём соответствуют символам на Вашей клавиатуре. Однако, символы для более высоких номеров (от 129 до 254) могут различаться.

Пример 1: Получаем код скрытого символа

Чтобы определить код последнего символа, Вы можете использовать функцию RIGHT (ПРАВСИМВ), чтобы извлечь последний символ строки. Далее применить функцию CODE (КОДСИМВ), чтобы получить код этого символа.

Функция КОДСИМВ в Excel

В ячейке D3 видно, что последний символ строки имеет код 160, что соответствует неразрывному пробелу, который используется на веб-сайтах.

Пример 2: Находим код символа

Чтобы вставить специальные символы в таблицу Excel, Вы можете использовать команду Symbol (Символы) на вкладке Insert (Вставка). Например, Вы можете вставить символ градуса ° или символ авторского права ©.

После того, как вставлен символ, можно определить его код, используя функцию CODE (КОДСИМВ):

Функция КОДСИМВ в Excel

Ввод на цифровой клавиатуре

  1. Нажмите клавишу Alt.
  2. На цифровой клавиатуре наберите 4-значный код (если необходимо, добавьте недостающие нули): 0169.
  3. Отпустите клавишу Alt, чтобы символ появился в ячейке. При необходимости нажмите Enter.

Ввод на клавиатуре без цифрового блока

В ноутбуках бывает так, что для использования функционала цифровой клавиатуры нужно дополнительно нажимать специальные клавиши. Рекомендую свериться на этот счёт с руководством пользователя для Вашего ноутбука. Вот как это работает на моём ноутбуке фирмы Dell:


Прямой код числа кодирует только знаковую информацию и используется для хранения положительных и отрицательных чисел в ЭВМ. Прямой код двоичного числа совпадает по изображению с записью самого числа, но в знаковом разряде ставится 0, если число положительное и, 1 если число отрицательное.
Обратный и дополнительный коды используются для выполнения всех арифметических операций через операцию сложения.
Следует помнить, что положительные числа в обратном и дополнительном коде совпадают с прямым кодом.
1) Прямой код числа (кодируется только знаковая информация), “+”=0; ”-”=1.
Для прямого кода возможны два представления нуля, машинный положительный ноль, т.е. +0,110=0,110, машинный отрицательный ноль, т.е. -0,111=1,111.

Пример перевода
x1=10101-[x1]пр=010101
x2=-11101-[x2]пр=111101
x3=0,101-[x3]пр=0,101
x4=-0,111-[x4]пр=1,111
2) Обратный код числа, используется для выполнения арифметических операций вычитания, умножения, деления, через сложение. Обратный код положительного числа совпадает с его прямым кодом, обратный код отрицательного числа формируется по правилам: в знаковом разряде записывается “1”; цифровые значения меняются на противоположные.

3) Дополнительный код числа, имеет такое же назначение, как и обратный код числа. Формируется по следующим правилам: положительные числа в дополнительном коде выглядят также как и в обратном и в прямом коде, т.е. не изменяются. Отрицательные числа кодируются следующим образом: к обратному коду отрицательного числа (к младшему разряду) добавляется 1, по правилу двоичной арифметики.

Пример перевода
x1=10101-[x1]доп=010101
x2=-11101-[x2]обр=100010+1-[x2]доп=100011
x3=0,101-[x3]доп=0,101
x4=-0,111-[x4]обр=1,000+1-[x4]доп=1,001
Для выявления ошибок при выполнении арифметических операций используются также модифицированные коды: модифицированный прямой; модифицированный обратный; модифицированный дополнительный, для которых под код знака числа отводится два разряда, т.е. “+”=00; ”-”=11. Если в результате выполнения операции в знаковом разряде появляется комбинация 10 или 01 то для машины это признак ошибки, если 00 или 11 то результат верный.

Как определить, положительное или отрицательное число? Знак числа определяет старший бит: 0 - положительное число, 1 - отрицательное число. Например, для числа 1,001 сразу можно определить, что оно отрицательное (меньше нуля).

С помощью числовых форматов можно изменять внешний вид чисел, в том числе даты и времени, не меняя при этом фактические числа. Числовой формат не влияет на значение в ячейке, которое Excel использует для вычислений. Фактическое значение отображается в строке формул.

В Excel есть несколько встроенных числовых форматов. Их можно использовать без изменения или в качестве основы для создания собственных числовых форматов. При создании пользовательских числовых форматов можно указать до четырех разделов кода формата. Они определяют формат положительных чисел, отрицательных чисел, нулевых значений и текста (в указанном порядке). Разделы кода должны быть разделены точкой с запятой (;).

В следующем примере показаны четыре типа разделов кода формата:

Формат положительных чисел

Формат отрицательных чисел

Если указан только один раздел кода формата, он будет использоваться для всех чисел. Если указаны два раздела кода формата, первый раздел кода будет использоваться для положительных чисел и нулей, а второй — для отрицательных чисел. Если требуется пропустить какой-либо раздел кода в числовом формате, необходимо добавить точку с запятой для каждого пропущенного раздела. Для объединения (или сцепления) двух значений можно использовать текстовый оператор амперсанд (&).

Создание кода пользовательского формата

На вкладке Главная щелкните Числовой формат и выберите Другие числовые форматы.

В диалоговом окне Формат ячеек в разделе Категория выберите пункт Другой.

В списке Тип выберите числовой формат, который нужно настроить.

Выбранный формат отображается вверху списка в поле Тип.

В поле Тип внесите необходимые изменения в выбранный числовой формат.

Советы по созданию кодов форматирования

Чтобы в ячейке отображался текст и числа, заключите текстовые знаки в двойные кавычки (" ") или поставьте перед отдельным символом обратную косую черту (\). Добавьте знаки в нужный раздел кода формата. Например, введите формат "Избыток "0,00 ₽;"Дефицит "-0,00 ₽, чтобы положительные значения отображались в формате "Избыток 125,74 ₽", а отрицательные — в формате "Недостаток -125,74 ₽".

Для отображения символов, перечисленных в следующей таблице, использовать кавычки не требуется:

Левая круглая скобка

Правая круглая скобка

Левая фигурная скобка

Правая фигурная скобка

Чтобы создать числовой формат, содержащий текст, который вводится в ячейке, вставьте в текстовом разделе кода числового формата символ "@" в том месте, где в ячейке должен будет отображаться введенный текст. Если в текстовом разделе числового формата отсутствует символ "@", в ячейке не будет отображаться введенный текст (будут видны только числа). Вы также можете создать числовой формат, который объединяет определенные текстовые символы с текстом, вводимым в ячейке. Для этого необходимые текстовые символы следует ввести перед символом "@", после символа "@" или и перед ним, и после него. Затем введенные текстовые символы нужно заключить в двойные кавычки (" "). Например, чтобы вставить текст перед текстом, вводимым в ячейке, введите "валовой доход для "@ в текстовом разделе кода числового формата.

Чтобы создать в числовом формате интервал, имеющий ширину символа, вставьте символ подчеркивания (_) перед требуемым символом. Например, чтобы положительные числа выводились на одном уровне с отрицательными числами, заключенными в скобки, вставьте символ подчеркивания в конце формата для положительных чисел, а за ним добавьте символ правой круглой скобки.

Чтобы число заполнило ячейку по всей ширине за счет повторения определенного символа, поставьте в коде числового формата перед этим символом звездочку (*). Например, можно ввести 0*–, чтобы заполнить пунктиром всю ячейку справа от числа, или *0 перед любым форматом, чтобы отобразить начальные нули.


На своём веку я занимался многими странными вещами, о некоторых из которых не могу рассказать, однако использование Excel вместо кодинга — одно из тех постыдных удовольствий, которые я не буду ни от кого скрывать.

Забудьте о тесте Тьюринга — проходит ли ваша гениальная идея программы тест Excel? Например, все пользовались простыми табличными формулами для генерации отчётов, но знаете ли вы что Excel может запросто выполнять замены регулярными выражениями, применять операторы if, и даже можно вызывать онлайн-функции, чтобы подгружать актуальные цены онлайн-сервисов?

Excel может подключаться к реальным базам данных, создавать файлы .csv и JSON, его можно запрашивать снаружи с помощью Python или других языков программирования. Можно использовать электронные таблицы в качестве базы данных, применять их для генерации контента и импортировать их на сайты Wordpress для массового создания тысяч постов агрегатора новостей или веб-сайтов с видео.

И всё это у вас под рукой, так что пользуйтесь этим инструментом и не бойтесь насмешек более слабых разработчиков, ведомых чувством превосходства, но на самом деле не знающих, что они просто тратят впустую время.

Недавно для рабочего проекта мне нужно было примерно две сотни тестовых сценариев на основании различных параметров, тестировать которые требовалось по отдельности и в сочетании с другими.

Я написал в Excel матрицу, указал в строках основные тестовые сценарии, а в столбцах — параметры, после чего смог просто написать формулу для генерации из них тестовых сценариев и перетащить настолько далеко вниз, насколько мне было нужно.

После этого я даже мог использовать вот такую формулу:

Она генерирует декораторы тестовых сценариев для автоматизированных тестов, которые мне нужно будет проводить.

Хотя мне уже привычно написание SQL-запросов с помощью Excel, позвольте вернуться к предыдущему примеру, чтобы продемонстрировать, насколько это здорово: для каждого из тестовых сценариев мне нужно было сгенерировать соответствующий SQL-запрос, то есть всего две сотни запросов.

Разумеется, писать их вручную я не хотел, поэтому создал один скрипт, а затем сопоставил значения со столбцами базы данных с помощью сравнения строк и операторов if. Примерно так:

="union select id from tb_test test where test.customer_property "&IF(A2="larger";">";"<")&"5;"

Особенно обратите внимание на оператор union , поскольку он позволил мне запустить скрипт один раз, затем скопировать все получившиеся id из результата и вставить их обратно в электронную таблицу.

После чего я мог даже использовать эти id и параметры для манипуляций с тестовыми данными и менять любые значения, которые мне понадобятся для конкретных тестовых сценариев.

Одна из самых раздражающих задач в моей карьере — отображение столбцов базы данных на объекты в коде; когда мне приходится заниматься подобной работой, я подумываю об увольнении прыжком из окна.

Так было, пока я не начал пользоваться Excel. При помощи электронных таблиц можно просто скопировать объявление таблицы базы данных и использовать значения для написания короткой формулы, создающей объектные нотации:


Как видите, если известны имя и тип данных исходного столбца, то можно создать всю строку программным образом. Однажды мне довелось отображать таким образом пятнадцать таблиц; я понимаю, что есть решения и получше на основе автоматических преобразователей, но не в том проекте, над которым я работал.

Когда-то я работал с человеком, который настаивал, что Excel ужасно неадекватен для планирования проектов и отслеживания проблем, поэтому мы провели с ним двухчасовое совещание, на котором вставляли всё это в его PowerPoint. Это похоже на шутку, но ему, похоже, казалось, что разноцветные прямоугольники, разбросанные по множеству слайдов, делали всё ярче и удобнее.

У полезных в работе людей для планирования проектов гораздо более традиционным инструментом является Excel — особенно легко в нём настраивать графики, ведь можно сдвигать столбцы и строки, а также беспроблемно вставлять даты.

На самом деле, для крупных проектов эта среда гораздо удобнее, чем работа с нуля в специализированной системе отслеживания проблем наподобие Jira — можно сделать всё за один раз после создания графика и согласования со всеми индивидуальных задач. Однажды мы впустую потеряли целую неделю, потому что нам постоянно приходилось начинать с чистого листа на доске Jira из-за того, что руководитель проекта понимал нереалистичность установленных графиков.

Ещё одно реальное преимущество такой среды заключается в том, что не относящиеся к ИТ сотрудники уже знакомы с Excel, а попытки научить их пользоваться новой системой приведут к откладыванию этапа планирования. Если кто-нибудь вернётся к преобразованию этого списка в предпочитаемый для него формат, то это уже его проблема или радость, но, на мой взгляд, на ранних этапах планирования Excel проявляет себя во всём своём блеске.

Чем старше я становлюсь, тем больше меня раздражают люди, ненавидящие то, что они не понимают.

То же самое относится и к Excel: это невероятно мощный инструмент, если вы сможете освоить его возможности, но достаточно всего одного человека в команде, который воскликнет «боже, только не Excel», чтобы мы потратили час на его объяснения преимуществ того современного инструмента, который он предпочитает. Другие инструменты приходят и уходят, а Excel всегда рядом, когда вам нужно крепкое плечо, в которое можно поплакать.

На правах рекламы

Эпичные серверы для разработчиков и не только! Недорогие VDS на базе новейших процессоров AMD EPYC и NVMe хранилища для размещения проектов любой сложности, от корпоративных сетей и игровых проектов до лендингов и VPN.

Изучим стандартные способы перевода чисел в различные системы счисления в Excel: двоичную, восьмеричную, десятичную и шестнадцатеричную.

Помимо повсеместно распространенной и всем нам хорошо известной десятичной системы счисления также используются и системы с другими основаниями (отличными от 10), например, двоичная, троичная, восьмеричная и т.д.
Большинство из них имеют достаточно широкое применение практически во всех современных электронных устройствах, в программировании или компьютерной документации.

Системы счисления в Excel

В Excel есть возможность стандартными средствами переводить данные в четырех системах счисления:

Таблица систем счисления


Давайте подробно остановимся на основных вариантах преобразования данных.

Перевод числа из десятичной в двоичную систему в Excel

Для преобразования данных в двоичную запись в Excel существует стандартная функция ДЕС.В.ДВ (имя функции получается как первые буквы от слов ДЕСятичное В ДВоичное, дополнительно разделенное точками):

ДЕС.В.ДВ(число; [разрядность])
Преобразует десятичное число в двоичное.

Обратите внимание, что Excel накладывает определенные ограничения на размер преобразуемых данных.
Двоичная запись не должна занимать более 10 знаков, поэтому десятичное число, соответственно, не должно быть больше 511 или меньше -512, иначе в качестве значения функция ДЕС.В.ДВ вернет ошибку.

Перевод из 10-й записи в 2-ую

Перевод числа из двоичной в десятичную систему в Excel

Для осуществления обратного перевода можно воспользоваться функцией ДВ.В.ДЕС:

ДВ.В.ДЕС(число)
Преобразует двоичное число в десятичное.

Перевод из 2-й записи в 10-ую

Перевод в других системах счисления

Арифметические операции с данными

Операции в Excel осуществляются в десятичной системе счисления, поэтому при применении арифметических действий (сложение, вычитание и т.д.) для преобразованных данных учитывайте, что конечный результат также будет записан в десятичной записи:

Сложение данных. Неправильный расчет


Чтобы избежать подобной проблемы, необходимо сначала перевести все данные в десятичный вид, произвести требуемые вычисления, а уже затем вновь преобразовать полученный результат в исходную систему счисления:

Читайте также: