Wednesday, January 03, 2007
엑셀/Excel] VBA매크로: 알파벳 A-Z 까지 무작위 랜덤 문자 출력; Random Char
엑셀의 셀에, 알파벳 A~Z까지의 랜덤한 글자를 채워 넣는 VBA매크로입니다.
Chr(Int(Rnd * 26) + 65)
이 부분이 핵심입니다.
알파벳 대문자 A(10진수 아스키 코드로 65)에서 Z(10진수 아스키 코드로 90)에 해당되는 정수를 랜덤하게 만든 후, Chr() 함수로 그 숫자를 문자로 변경하는 것입니다.
(엑셀에서 Alt+F11키를 눌러, 비베 에디터를 실행하고, 비베 에디터 메뉴의, "삽입 > 모듈"을 선택한 후, 다음 코드를 붙여 넣습니다.)
비베 에디터에서 F5 키를 누르거나, 엑셀에서 Alt+F8 키를 누르면 VBA 매크로가 실행됩니다.
실행 결과:
A1 셀부터 A30 셀까지 다음과 같은 식으로 무작위의 알파벳 30개가 채워집니다.
Cells(R, 1).Value = Chr(Int(Rnd * 26) + 97)
이렇게 소스를 고치면 소문자로 랜덤한 알파벳이 나옵니다.
▶▶ 엑셀/Excel] VBA의 Rnd 함수로, 1에서 100까지의 랜덤 숫자 만들기
Chr(Int(Rnd * 26) + 65)
이 부분이 핵심입니다.
알파벳 대문자 A(10진수 아스키 코드로 65)에서 Z(10진수 아스키 코드로 90)에 해당되는 정수를 랜덤하게 만든 후, Chr() 함수로 그 숫자를 문자로 변경하는 것입니다.
VBA기초: A~Z까지 무작위 알파벳 발생/생성 예제 소스: Random Char Generator
(엑셀에서 Alt+F11키를 눌러, 비베 에디터를 실행하고, 비베 에디터 메뉴의, "삽입 > 모듈"을 선택한 후, 다음 코드를 붙여 넣습니다.)
Sub Random_Char_Example()
Randomize
Dim R
For R = 1 To 30
Cells(R, 1).Value = Chr(Int(Rnd * 26) + 65)
Next R
End Sub
Randomize
Dim R
For R = 1 To 30
Cells(R, 1).Value = Chr(Int(Rnd * 26) + 65)
Next R
End Sub
비베 에디터에서 F5 키를 누르거나, 엑셀에서 Alt+F8 키를 누르면 VBA 매크로가 실행됩니다.
실행 결과:
A1 셀부터 A30 셀까지 다음과 같은 식으로 무작위의 알파벳 30개가 채워집니다.
S
O
J
J
Z
I
R
C
E
O
T
S
Y
R
M
M
A
R
Y
A
B
B
R
J
K
Y
L
H
N
L
O
J
J
Z
I
R
C
E
O
T
S
Y
R
M
M
A
R
Y
A
B
B
R
J
K
Y
L
H
N
L
소문자로 출력 방법
Cells(R, 1).Value = Chr(Int(Rnd * 26) + 97)
이렇게 소스를 고치면 소문자로 랜덤한 알파벳이 나옵니다.
▶▶ 엑셀/Excel] VBA의 Rnd 함수로, 1에서 100까지의 랜덤 숫자 만들기
tag: office
엑셀 Excel | 워드 Word | VBA 매크로 | 오피스
좋은정보 감사드립니다
덕분에 편하게 작업했습니다.
감사합니다~ ^^
<< Home