코드에 오류가 없는데도 Errorhandler
프로 시저가 아직 실행 중입니다. 이상한 점은 문제 일 수 있습니다. ?오류 발생시 오류 발생 없음에도 불구하고 오류 GoTo 문이 여전히 실행 중임
오류 처리기없이 코드를 실행해도 오류는 발생하지 않지만 오류 처리 문을 포함하면 Errorhandler
아래의 msgbox
여전히 표시됩니다!
코드
Public Sub ExportGraphs(Optional PivotExport As Boolean)
' Exports only graphs on the "Mainwindow" sheet to a new worksheet
Dim wsh As Worksheet: Set wsh = Sheets.Add
Dim source_sht As Worksheet: Set source_sht = Sheets("Mainwindow")
ActiveWindow.Zoom = 70
On Error GoTo Errorhandler
With wsh
If source_sht.OLEObjects("Btn_CurrentTime").Object.Value = True Then
.Name = source_sht.OLEObjects("CombBox_Instruments").Object.Value & " " & source_sht.OLEObjects("DTPicker_FROM").Object.Value _
& "-" & source_sht.OLEObjects("DTPicker_TO").Object.Value
Else
.Name = source_sht.OLEObjects("CombBox_Instruments").Object.Value & " " & "Max_Possible_To" _
& "-" & source_sht.OLEObjects("DTPicker_TO").Object.Value
End If
End With
Dim source_chart As ChartObject
Dim target_rng As Range: Set target_rng = wsh.Range("A1")
For Each source_chart In source_sht.ChartObjects
source_chart.CopyPicture xlScreen, xlBitmap
target_rng.PasteSpecial
Set target_rng = target_rng.Offset(20, 0)
Next
If PivotExport = True Then
Debug.Print "se"
End If
Errorhandler:
MsgBox "An export sheet for this ticker and timeline already exists"
End Sub
단순히'''Errorhandler :'''레이블 앞에''Exit Sub'''를 넣으십시오. 또는''If Err.Number <> 0를 추가하십시오. 그러면 MsgBox ...'''. 예 : 자세한 정보 http://www.cpearson.com/excel/errorhandling.htm – dee