ASC function
The ASC function in Excel is used to convert a text string from a single-byte character set (SBCS) to a double-byte character set (DBCS) or to get the ASCII code of the first character in a text string. This function is particularly useful when working with Asian languages or when dealing with character encoding differences between SBCS and DBCS.
Syntax
=ASC(text)
Parameters
- text (required): A text string or cell reference containing the text you want to analyze. The function returns the ASCII code for the first character in the text string.
Key Points
- Single-byte vs Double-byte: The
ASCfunction is most commonly used in regions or languages where single-byte character sets (SBCS) and double-byte character sets (DBCS) are common, such as in certain Asian languages (e.g., Chinese, Japanese, and Korean). In these languages, SBCS characters are typically represented by one byte, while DBCS characters are represented by two bytes. - ASCII Codes: The function returns the ASCII code of the first character in the text string. The ASCII code is a numerical representation of a character in the computer’s memory. For example:
- The ASCII code for
"A"is 65. - The ASCII code for
"B"is 66.
- The ASCII code for
- Support for Non-ASCII Characters: If the text contains characters outside the standard ASCII range (i.e., characters beyond ASCII code 127), this function might behave differently depending on the system’s encoding and locale settings. In those cases, the character might belong to an extended encoding scheme (like UTF-8 or Unicode).
Example Usage
1. Basic Usage with ASCII Code
To find the ASCII code of the first character in the string "Hello":
=ASC("Hello")
This returns 72, which is the ASCII code for the letter “H”.
2. Using with Cell Reference
If cell A1 contains the text "World", you can use the following formula to get the ASCII code of the first character:
=ASC(A1)
This would return 87, the ASCII code for the letter “W”.
3. Using with Non-ASCII Characters
If the text string contains non-ASCII characters (e.g., Chinese characters), the ASC function may not work as expected for characters outside the ASCII range, because it is designed for single-byte characters and might return an error or incorrect value for multi-byte characters.
Notes
- Locale Dependence: The
ASCfunction’s behavior may vary depending on the system’s locale and character encoding. It is important to be aware of the encoding being used if you are working with international characters. - Replacement: In modern versions of Excel, the
ASCfunction has been largely replaced with theUNICODEfunction for handling a broader set of characters, including multi-byte characters and Unicode characters.UNICODE: Returns the Unicode value for the first character in a text string, which works for a wider range of characters beyond the standard ASCII set.
Related Functions
UNICODE: This function provides a more versatile solution for character encoding by returning the Unicode code point of the first character in a string.Example:
=UNICODE("A")This will return 65, which is the Unicode code point for the letter “A”.
CHAR: TheCHARfunction returns the character based on the ASCII or Unicode value provided. This is essentially the reverse ofASCfor ASCII codes.Example:
=CHAR(65)This returns the character “A”.
The ASC function is useful for understanding or working with character encodings, particularly in legacy systems or environments where SBCS/DBCS handling is essential. However, for broader character sets and more modern needs, UNICODE is often the preferred function.