A or B는 A또는 B가 True일경우 True를 리턴합니다. 둘다 False이면 False를 리턴하구요..
이럴땐.. IF를 사용해야합니다.
If "조건" Then "true일경우" Else "false일경우"
"true일경우"나 "false일경우"의 실행코드가 1주일경우는 IIF를 사용합니다.
IIF("조건","True일경우","False일경우")
저는 조건을 Rnd * 10 Mod 2로 사용했습니다.
0~10사이의 값을 2로 나눈 나머지로 0또는 1을 결과값으로 갖습니다.
Rnd함수를 사용했으니까.. 실행할때마다 랜덤으로 0또는 1이 나오겠죠..
조건문에서 0은 False이고, 0이 아닌 숫자는 True로 인식합니다. 즉 1은 True죠..
변수들 형식을 String으로 변경하고.. 숫자를 문자로 바꾸는 CStr함수를 활용했습니다.
기존의 Rnd의 배수 설정이 틀려서.. 수정했습니다.
Int((상한값 - 하한값 + 1) * Rnd + 하한값)
Sub 울트라() Dim i As Long Dim a As String, b As String, c As String, d As String Dim e As String, f As String, g As String, h As String Randomize (1) For i = 1 To 100 a = IIf(Rnd * 10 Mod 2, CStr(Int((9 * Rnd) + 1)), Chr(Int(26 * Rnd + 65))) b = IIf(Rnd * 10 Mod 2, CStr(Int((10 * Rnd) + 0)), Chr(Int(26 * Rnd + 65))) c = IIf(Rnd * 10 Mod 2, CStr(Int((10 * Rnd) + 0)), Chr(Int(26 * Rnd + 65))) d = IIf(Rnd * 10 Mod 2, CStr(Int((10 * Rnd) + 0)), Chr(Int(26 * Rnd + 65))) e = IIf(Rnd * 10 Mod 2, CStr(Int((10 * Rnd) + 0)), Chr(Int(26 * Rnd + 65))) f = IIf(Rnd * 10 Mod 2, CStr(Int((10 * Rnd) + 0)), Chr(Int(26 * Rnd + 65))) g = IIf(Rnd * 10 Mod 2, CStr(Int((10 * Rnd) + 0)), Chr(Int(26 * Rnd + 65))) h = IIf(Rnd * 10 Mod 2, CStr(Int((10 * Rnd) + 0)), Chr(Int(26 * Rnd + 65))) Cells(i, 2) = (a & b & c & d & e & f & g & h) Next i End Sub
음..
a = Int((8 * Rnd) + 1) Or Chr(Int(25 * Rnd + 65))
or연산자는 논리값을 리턴합니다.
A or B는 A또는 B가 True일경우 True를 리턴합니다. 둘다 False이면 False를 리턴하구요..
이럴땐.. IF를 사용해야합니다.
If "조건" Then "true일경우" Else "false일경우"
"true일경우"나 "false일경우"의 실행코드가 1주일경우는 IIF를 사용합니다.
IIF("조건","True일경우","False일경우")
저는 조건을 Rnd * 10 Mod 2로 사용했습니다.
0~10사이의 값을 2로 나눈 나머지로 0또는 1을 결과값으로 갖습니다.
Rnd함수를 사용했으니까.. 실행할때마다 랜덤으로 0또는 1이 나오겠죠..
조건문에서 0은 False이고, 0이 아닌 숫자는 True로 인식합니다. 즉 1은 True죠..
변수들 형식을 String으로 변경하고.. 숫자를 문자로 바꾸는 CStr함수를 활용했습니다.
기존의 Rnd의 배수 설정이 틀려서.. 수정했습니다.
Sub 울트라()
Dim i As Long
Dim a As String, b As String, c As String, d As String
Dim e As String, f As String, g As String, h As String
Randomize (1)
For i = 1 To 100
a = IIf(Rnd * 10 Mod 2, CStr(Int((9 * Rnd) + 1)), Chr(Int(26 * Rnd + 65)))
b = IIf(Rnd * 10 Mod 2, CStr(Int((10 * Rnd) + 0)), Chr(Int(26 * Rnd + 65)))
c = IIf(Rnd * 10 Mod 2, CStr(Int((10 * Rnd) + 0)), Chr(Int(26 * Rnd + 65)))
d = IIf(Rnd * 10 Mod 2, CStr(Int((10 * Rnd) + 0)), Chr(Int(26 * Rnd + 65)))
e = IIf(Rnd * 10 Mod 2, CStr(Int((10 * Rnd) + 0)), Chr(Int(26 * Rnd + 65)))
f = IIf(Rnd * 10 Mod 2, CStr(Int((10 * Rnd) + 0)), Chr(Int(26 * Rnd + 65)))
g = IIf(Rnd * 10 Mod 2, CStr(Int((10 * Rnd) + 0)), Chr(Int(26 * Rnd + 65)))
h = IIf(Rnd * 10 Mod 2, CStr(Int((10 * Rnd) + 0)), Chr(Int(26 * Rnd + 65)))
Cells(i, 2) = (a & b & c & d & e & f & g & h)
Next i
End Sub