Summary

The Excel OCT2HEX function converts an octal number to its hexadecimal equivalent. For example, the following formula converts the octal number 23 to hexadecimal:

=OCT2HEX(23) // returns 13

Purpose 

Converts an octal number to its hexadecimal equivalent

Return value 

A hexadecimal number as text

Syntax

=OCT2HEX(number,[places])
  • number - The octal number you want to convert.
  • places - [optional] The number of characters to use in the result. If omitted, uses the minimum number of characters necessary.

Using the OCT2HEX function 

The OCT2HEX function is used to convert octal numbers (base 8) to hexadecimal numbers (base 16). This is useful when working with different number systems, especially in engineering and computer science applications.

Key features

  • Converts octal numbers to hexadecimal numbers
  • Handles both positive and negative octal numbers (using two's-complement for negatives)
  • Returns a hexadecimal number as text

To get the octal representation of a hexadecimal number, use the HEX2OCT function.

Table of contents

Example #1 - Basic conversion

To convert the octal number 12 to hexadecimal, use the following formula:

=OCT2HEX(12) // returns A

The spreadsheet below shows some basic conversions of octal numbers to hexadecimal numbers:

OCT2HEX function basic conversion in Excel, showing octal 12 converting to hexadecimal A

Example #2 - Using the places argument

The places argument in the OCT2HEX function specifies the minimum number of characters to use in the result. When the converted hexadecimal number has fewer characters than the value specified for places, Excel pads the result with leading zeros. This is useful when you want all results to have a consistent length.

For example, to convert the octal number 12 to hexadecimal and pad the result to 3 characters, use:

=OCT2HEX(12, 3) // returns 00A

Places must be a number between 1 and 10, otherwise Excel will return a #NUM! error. If places is not an integer, Excel will truncate the decimal part. If the result is longer than the number specified in places, Excel will return a #NUM! error.

Example #3 - Negative octal numbers

Excel represents negative numbers in non-decimal bases (like octal) using two's complement notation with a fixed width of 10 characters. This means octal numbers from 0 to 3777777777 represent positive numbers, and octal numbers from 4000000000 to 7777777777 represent negative numbers.

Shown below is a table of the octal numbers from 0 to 7777777777 and their corresponding hexadecimal and decimal numbers:

OCT2HEX function negative octal numbers in Excel, showing octal 7777777776 converting to hexadecimal FFFFFFFE

This means the octal numbers from 4000000000 to 7777777777 are mapped to different hexadecimal numbers, because Excel uses two's complement notation to represent negative numbers. For example, the octal number 4000000000 is mapped to the hexadecimal number FFE0000000 instead of the hexadecimal number 0020000000.

=OCT2HEX(0377777777, 10) // returns 0003FFFFFF
=OCT2HEX(0400000000, 10) // returns 0004000000
=OCT2HEX(3777777777, 10) // returns 001FFFFFFF
=OCT2HEX(4000000000, 10) // returns FFE0000000

Example #4 - Error conditions

There are several error conditions that can occur when using the OCT2HEX function. For example, if the input contains more than 10 digits, OCT2HEX returns a #NUM! error. This behavior and other error conditions are shown in the example below:

OCT2HEX function error conditions in Excel, showing #NUM! error for octal numbers with more than 10 digits

Dave Bruns Profile Picture

AuthorMicrosoft Most Valuable Professional Award

Dave Bruns

Hi - I'm Dave Bruns, and I run Exceljet with my wife, Lisa. Our goal is to help you work faster in Excel. We create short videos, and clear examples of formulas, functions, pivot tables, conditional formatting, and charts.