매크로 사용시 Excel에서 '런타임 오류'7 '메모리 부족'오류 방지


0

Excel 파일에서 매크로를 실행할 때 마다이 오류가 계속 발생합니다. 이것을 막을 수있는 방법이 있습니까? 내 코드는 다음과 같습니다. 디버깅은 문제로 다음 줄을 강조 표시합니다.

ActiveSheet.Shapes.SelectAll

내 매크로 :

Private Sub Save()

Dim sh As Worksheet

ActiveWorkbook.Sheets("Report").Copy 'Create new workbook with Sheets("Report"(2)) as only sheet.
Set sh = ActiveWorkbook.Sheets(1) 'Set the new sheet to a variable. New workbook is now active workbook.
sh.Name = sh.Range("B9") & "_" & Format(Date, "mmyyyy") 'Rename the new sheet to B9 value + date.
With sh.UsedRange.Cells
    .Value = .Value 'eliminate all formulas
    .Validation.Delete 'remove all validation
    .FormatConditions.Delete 'remove all conditional formatting
    ActiveSheet.Buttons.Delete
    ActiveSheet.Shapes.SelectAll
    Selection.Delete

    lrow = Range("I" & Rows.Count).End(xlUp).Row 'select rows from bottom up to last containing data in column I
    Rows(lrow + 1 & ":" & Rows.Count).Delete 'delete rows with no data in column I
    Application.ScreenUpdating = False
    .Range("A410:XFD1048576").Delete Shift:=xlUp 'delete all cells outwith report range
    Application.ScreenUpdating = True

    Dim counter
    Dim nameCount

    nameCount = ActiveWorkbook.Names.Count
    counter = nameCount
    Do While counter > 0
    ActiveWorkbook.Names(counter).Delete
    counter = counter - 1
    Loop 'remove named ranges from workbook

End With
ActiveWorkbook.SaveAs "\\Marko\Report\" & sh.Name & ".xlsx" 'Save new workbook using same name as new sheet.
ActiveWorkbook.Close False 'Close the new workbook.
MsgBox ("Export complete. Choose the next ADP in cell B9 and click 'Calculate'.") 'Display message box to inform user that report has been saved.

End Sub

이 방법을보다 효율적으로 만들거나이 오류를 방지하는 방법을 모릅니다.


통합 문서에 모양이 있습니까?
LPChip

그렇습니다, 3 개의 형태 제어 단추.
MasterJedi

양식 컨트롤 버튼은 모양이 아닙니다. 모양이 없기 때문에이 오류가 발생한다고 생각합니다.
LPChip
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.