rand(life)
[VBA] 코드 모음5 - 배열 관련 본문
242 괄호안의 숫자합계
dim temp as variNt '배열변수
temp = split (r, "(")
for i = 1 to ubound(temp)
fs = fs + val (temp (i) )
next
'split으로 (를 기준해서 나누면 6), 8), 9)... 처럼 될텐데 val 을 씌우면 숫자로 인식되는지 확인 필요
94
split을 이용해 배열변수에 값넣기
변수 = split("1,20,300,200", ",")
쌍따옴표를 두번만쓰면된다
option compare binary 대소문자구분정렬
option compare text 구분없음
일차원배열은 가로방향
배열의 값을 범위에 한번에 쓸 수 있다
range("a1:f10") = myarry
[동적배열의 값 셀에 넣을때]
Worksheets("sheet2").Cells(3, k + 3).value = title(k).value 라고 하니까 ‘개체가 필요하다’는 오류가 뜬다
Worksheets("sheet2").Cells(3, k + 3) = title(k) 이렇게 해야한다.
[배열에 값 넣을때]
dim strtemp ()
strtemp = Range("G6", Cells(Rows.Count, "G").End(3)).Value
범위의 셀값을 한꺼번에 넣을 수 있다
Sub q1()
Dim stemp
가로 = ActiveSheet.Cells(2, 2).Value
세로 = ActiveSheet.Cells(3, 2).Value
Set Rng = ActiveSheet.Cells(6, 1)
ReDim stemp(세로, 가로)
For i = 1 To 세로
For k = 1 To 가로
stemp(i, k) = i & "0" & k
Next
Next
Rng.Offset(1, 0).Resize(세로, 가로) = stemp
End Sub
['파일 이름이 없을때까지 파일 이름 찾아서 fileList 배열변수에 넣기]
While fName <> ""
ReDim Preserve fileList(i)
fileList(i) = fName
fName = Dir()
i = i + 1
Wend
[2차원 배열 사용하기]
Dim stemp
가로 = ActiveSheet.Cells(2, 2).Value
세로 = ActiveSheet.Cells(3, 2).Value
Set Rng = ActiveSheet.Cells(6, 1)
ReDim stemp(세로, 가로)
For i = 1 To 세로
For k = 1 To 가로
stemp(i, k) = i & "0" & k
Next
Next
Rng.Offset(1, 0).Resize(세로, 가로) = stemp
End Sub
[resize 와 transpose 사용법]
Set a = r항목.Offset(1, 0) '사용량'이라는 글자의 바로 아래, '전력' 사용량
Worksheets(str).Cells(iDateRow, 3).Resize(, 3) = Application.Transpose(a.Resize(3))
Resize(, 3) = Resize(1, 3) 같은 의미이다.
Sheet2.Range("c4").Resize(L, 1) = Sheet1.Range("E5").Resize(L).Value2
오른쪽에 value를 , 왼쪽은 주소
또는 이런 식으로도 가능
Set k = r.Resize(, 3)
Set o = rngC.Offset(i + 1, 0)
o.Resize(, 3) = k.Value