VBA Asc | Excel VBA에서 Asc 함수를 사용하는 방법? (ASCII 문자 코드)

Excel VBA Asc 함수

VBA의 Asc 함수는 제공된 문자열 (인수 / 매개 변수로 제공된 문자열)의 첫 번째 문자에 해당하는 문자 코드를 나타내는 정수 값을 함수에 반환하는 데 사용됩니다. 일반적으로 Visual Basic Editor를 통해 입력되는 매크로 코드에서 사용하거나 제공 할 수 있습니다.

매크로 코드를 편집하고 디버그하는 데 사용할 수있는 VBE (Visual Basic Editor)에서 매크로가 실행되는 Excel 환경입니다. 매크로 코드를 보유하고 Excel 통합 문서에 연결합니다.

Asc 함수가 반환하는 정수 값은 VBA의 해당 ASCII 문자 코드입니다. ASCII (American Standard Code for Information Interchange)는 라틴 알파벳, 10 개의 아라비아 숫자, 일부 문장 부호 및 제어 문자를 포함하여 총 128 개의 문자가 정의 된 7 비트 문자 인코딩입니다. 인코딩을 위해 8 비트의 최소 공간이 필요하므로 분음 부호 문자는 포함되지 않습니다. 이 8 비트 코딩은 총 256 개의 문자가 정의 된 ANSI (American National Standards Institute)로 수행됩니다. ANSI는 확장 ASCII라고도합니다.

VBA Asc 함수 구문

ASC 기능의 일반 구문은 다음과 같습니다.

ASC 수식 구문에는 다음 인수가 있습니다.

문자열 : 필수, 첫 번째 문자의 해당 문자 코드가 필요하고 반환 될 텍스트 문자열을 나타냅니다.

제공된 문자열에 문자가 하나만있는 경우 함수는 해당 문자 자체에 대한 숫자 문자 코드를 분명히 반환합니다.

Excel VBA Asc의 예

Excel VBA에서 Asc를 사용하는 방법을 아래에서 살펴 보겠습니다.

이 VBA Asc 함수 Excel 템플릿을 여기에서 다운로드 할 수 있습니다 – VBA Asc 함수 Excel 템플릿

예 1

일부 문자열을 포함하는 Excel 파일이 있고 이러한 문자열에 Asc 함수를 사용하려고한다고 가정 해 보겠습니다. 파일에 포함 된 문자열을 살펴 보겠습니다.

Visual Basic Editor에서 작성할 수 있고 다음과 같이 액세스 할 수있는 매크로에서 VBA의 Asc 함수를 사용합니다.

개발자로 이동 한 다음 매크로를 클릭합니다.

이제 매크로 이름을 만듭니다. '매크로 이름'아래에 만들려는 매크로의 이름을 입력하고 '매크로 인'드롭 다운에서 PERSONAL.XLSB를 선택합니다. 매크로는 Excel이 시작될 때마다 백그라운드에서 열리는 숨겨진 통합 문서 인 개인 통합 문서에 저장할 수 있습니다. PERSONAL.XLSB를 선택하면 개인 통합 문서에 매크로가 저장되므로 개인 통합 문서가 시스템 / 파일에 한정되지 않으므로 매크로를 항상 사용할 수 있습니다.

'만들기'를 클릭합니다.

그러면 다음과 같이 Visual Basic Editor에서 VBA 하위 프로 시저가있는 창이 열립니다.

이제 변수 결과를 정의하십시오.

암호:

Sub Code () Dim 결과 1 End Sub

이제 문자열의 문자 코드를 반환하는 수식으로 변수 Result1을 할당합니다.

암호:

Sub Code () Dim Result1 Result1 = Asc ( "Raj") End Sub

이제 다음과 같이 VBA 메시지 상자 (MsgBox)를 사용하여 Result1의 결과 값을 표시하고 반환 할 수 있습니다.

암호:

Sub Code () Dim Result1 Result1 = Asc ( "Raj") MsgBox Result1 End Sub

이제 창 상단의 '실행'을 클릭하거나 F5 키를 눌러이 코드를 수동으로 실행하면 다음과 같이 메시지 상자에 표시된 문자열의 첫 글자 "Raj"의 문자 코드를 얻습니다.

따라서 위의 스크린 샷에서 매크로 실행시 메시지 상자에 '82'가 반환되는 것을 볼 수 있습니다. 이것은 'R'의 문자 코드가 82임을 의미합니다.

이제 위의 예에서 문자열 "Karan"의 문자 코드를 찾고자한다고 가정 해 보겠습니다. 이를 위해 위와 동일한 단계를 따릅니다.

코드 대신 Raj에서 문자 코드를 얻기 위해 Karan을 작성합니다.

암호:

 Sub String2 () Dim Result2 Result2 = Asc ( "Karan") MsgBox Result2 End Sub 

이제이 코드를 수동으로 실행하거나 F5 키를 눌러 다음과 같이 메시지 상자에 표시된 문자열의 첫 글자 "Karan"의 문자 코드를 얻습니다.

따라서 위의 스크린 샷에서 매크로 실행시 메시지 상자에 '75'가 반환되는 것을 볼 수 있습니다. 이것은 'K'의 문자 코드가 75임을 의미합니다.

이제 나머지 문자열의 결과가 어떻게 변경되는지 살펴 보겠습니다.

암호:

 Sub String3 () Dim Result2 Result2 = Asc ( "Heena") MsgBox Result2 End Sub 

 Sub String4 () Dim Result2 Result2 = Asc ( "Arun") MsgBox Result2 End Sub 

 Sub String5 () Dim Result2 Result2 = Asc ( "A") MsgBox Result2 End Sub 

 Sub String6 () Dim Result2 Result2 = Asc ( "a") MsgBox Result2 End Sub 

이 하위 절차를 하나씩 실행하면 메시지 상자에 다음 문자 코드가 반환됩니다 (각각 한 번에 하나씩). 위의 문자열에 대해 반환 된 해당 값 목록입니다.

따라서 위의 스크린 샷에서 볼 수 있듯이 ASC 함수는 문자열 "Arun"과 문자열 "A"에 대해 65로 문자 코드를 반환하는 것을 볼 수 있습니다. 이는 반환 된 문자 코드가 VBA ASCII이거나 문자열이 둘 이상의 문자 인 경우 문자열의 첫 번째 문자에 해당하는 문자 코드이기 때문입니다. 따라서 문자열의 첫 문자 또는 첫 문자로 65가 반환됩니다. "Arun"도 'A'입니다.

예제 # 2

VBA ASC 함수에 매개 변수 / 인수로 제공된 문자열이 빈 / 빈 문자열 (또는 문자가없는 문자열) 인 경우 함수는 런타임 오류를 반환합니다.

다음 코드는 동일하게 설명합니다.

 Sub blank () Dim 결과 결과 = Asc ( "") MsgBox (result) End Sub 

이 코드를 실행하면 다음과 같은 런타임 오류가 발생합니다.

따라서 위의 스크린 샷에서 ASC 함수에 매개 변수 또는 인수로 제공된 문자열이 비어 있거나 비어 있으면 함수가 런타임 오류를 반환하는 것을 볼 수 있습니다.

기억해야 할 사항

  • VBA ASC 함수에 제공된 문자열은 유효한 모든 문자열 식일 수 있습니다.
  • Asc 함수는 대소 문자를 구분합니다.
  • Asc 함수가 반환하는 정수 값은 0-255 범위에 있습니다.
  • AZ 용 VBA의 ASCII 코드는 65-90이고 az의 경우 97-122입니다.
  • 매크로 또는 하위 프로 시저에 지정된 이름은 VBA의 일부 기본 함수 이름이 될 수 없습니다. 이름이 지정되면 하위 절차에 오류가 표시됩니다.