|
* 답변하시는 분들께 도움이 되도록 자신의 환경을 아래 항목 옆에 기재해 주세요.
- 엑셀 버전(95,97,2000,xp,2003,2007):
* 아래줄에 질문을 작성하세요 >>
Sub testasdsadadasd()
Dim rngAll As Range
Dim rngC As Range
Dim r As Long
Dim varTemp()
Dim i As Integer
With ActiveSheet.UsedRange
Set rngAll = .Offset(4, 3).Resize(.Rows.Count - 4, .Columns.Count - 3)
End With
For Each rngC In rngAll
If Not IsEmpty(rngC) Then
If rngC.Value = "2020-08-13" Then
For i = 1 To rngC.Count
r = r + 1
ReDim Preserve varTemp(1 To 1, 1 To r)
varTemp(1, r) = Cells(1, rngC.Column) & Cells(2, rngC.Column) & Cells(3, rngC.Column) & "" & Cells(rngC.Row, 1) & Cells(4, rngC.Column)
Next i
End If
End If
Next rngC
Sheets("Sheet2").Cells(1, 1).Resize(1, UBound(varTemp, 2)) = varTemp
Sheets("Sheet2").Columns.AutoFit
이렇게 작성하면 해당하는 값을 가로로 다른 시트에 뿌려줄 수 있는데
세로로 배치하려고
ReDim Preserve varTemp(1 To 1, 1 To r) 이걸
ReDim Preserve varTemp(1 To r , 1 To 1) 으로,
varTemp(1, r) 이걸
varTemp(r, 1)으로 바꾸니까 첨자오류가 나네요 ㅠㅠㅠ
제가 전문적으로 공부를 하고 고치고 있는게 아니라
한편으로는 구글링하면서 한편으로는 코드를 하나하나 실행해보면서 하다
결국 한계에 부딪혔습니다 ㅠㅠㅠㅠㅠㅠㅠ
고수님들의 가르침 부탁드려요
좋은 주말되세요
End Sub |
|