0
워크 시트에 두 개의 매크로가 있습니다. 첫 번째는 특정 셀이 주소가 지정되었는지 확인하고 특정 값을 가지면 다른 매크로가 실행됩니다. 다음 코드가이 용도로 사용됩니다.엑셀 vba 런타임 오류 7 - 메모리 부족
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("K10:K1000")) Is Nothing And Target.Value = "Trapezoidal roof 0.6mm and above" Or Target.Value = "LightBox ballasted" Then
Application.ScreenUpdating = False
Call PPAPricePerkWp
End If
End Sub
이 코드는 잘 작동합니다.
두 번째 매크로는 단추를 클릭 할 때 실행됩니다. 이 매크로는 셀/행을 복사하여 스프레드 시트의 다른 부분에 붙여 넣습니다.
매크로를 실행하면 오류 Runtime error 7 - out of memory
이 발생하고 위의 코드가 손상됩니다.
특정 열의 셀에 주소가 지정되어 있는지 여부를 확인할 수있는 다른 방법이 있습니까? 위의 오류가 발생하지 않을 것입니까?
'PPAPricePerkWp'에서 어떤 일이 발생합니까? –
열 k에있는 셀의 셀 값을 확인하고 일부 계산에서 값을 아래 셀에 붙여 넣습니다. 'PPAPricePerkWp'가 실행되지 않도록 디버거가'If Not Target' 라인에서 깨집니다. – evoandy
서브 루틴을 호출하기 전에 이벤트를 비활성화하여 셀을 변경할 때마다 Worksheet_Change가 트리거되지 않도록 할 수 있습니다. – SeanC