시트 복사 런타임에러가 발생해요
-
게시물 수정 , 삭제는 로그인 필요
시트를 500개 복사해서 pdf작성후 삭제를 반복하는 매크로인데요(pdf부분은 삭제하였음)
시트를 21326번째 또는 21826번째에서 런타임에러가 발생합니다.
어느 고수님께서 메모리때문이라고 하던데
시트를 복사후 인쇄하고 삭제해서 항상 workbook에 500개의 시트만 존재하는데 메모리를 잡나요?
혹시 처리할수 있는 방법이 있을까요???
Sub 시트복사및삭제()
Dim Sheet_name As String
Dim 시트그룹() As String
With Application
.DisplayAlerts = False
.ScreenUpdating = False
End With
Dim 전체수량 As Long
Dim 누적수량 As Long
Dim 분할수량 As Integer
Dim 분할횟수 As Integer
전체수량 = 30000
분할수량 = 500
누적수량 = 1
분할횟수 = 전체수량 \ 분할수량
Dim j As Integer
Dim i As Integer
For j = 1 To 분할횟수
Sheets("SAMPLE").Copy After:=Worksheets("SAMPLE")
ActiveSheet.Name = "시트 (1)"
ReDim 시트그룹(1 To 분할수량)
For i = 1 To 분할수량
Sheet_name = "시트 (" & i & ")"
If i <> 분할수량 Then
Sheets(Sheet_name).Copy After:=Worksheets(Sheet_name)
Sheets(Sheet_name).Range("AE1") = 누적수량
Else
Sheets(Sheet_name).Range("AE1") = 누적수량
End If
Application.CutCopyMode = False
누적수량 = 누적수량 + 1
시트그룹(i) = Sheet_name
Sheets(Sheet_name).Activate
Next i
ThisWorkbook.Sheets(시트그룹()).Select
ActiveWindow.SelectedSheets.Delete
Next j
With Application
.DisplayAlerts = True
.ScreenUpdating = True
End With
MsgBox "완료"
End Sub
#시트 복사 #시트 복사 단축키 #시트 복사 이름 충돌 #시트 복사 안됨 #시트 복사 매크로 #시트 복사 함수 #시트 복사 vba