2014-10-09 2 views
1

VBA 코드가있는 Excel 양식을 사용하여 사용자 폼을 호출합니다. 해당 userform을 실행하면 지침 중 하나가 시트를 삭제하는 것입니다 (하지만 그 시트의 코드가 여전히 실행중인 것으로 보이는 첫 번째 위치에서 userform이 호출되기 때문에). 결국 VBA Microsoft Excel 개체 목록에 "고스트"시트가 남습니다. 옵션이 회색으로 표시되므로이 시트를 제거 할 수 없습니다. 결과적으로 많은 양의 "고스트"시트가 누적됩니다.VBA 코드가 자신의 시트를 삭제하고 "유령"시트를 남깁니다.

screenshot. 시트에

코드 :

Private Sub CommandButton1_Click() 
    Call Show_UserForm 
End Sub 

어떤 조언이나이 문제를 해결하는 데 도움을 크게 감상 할 수있다.

답변

0

"고스트"시트는 객체의 코드 일뿐입니다.

난 당신이 루틴이 호출 된 시트를 삭제하기 때문에 효과가 어떻게 될지 모르겠어요,하지만 당신은 XXX이 개체의 (name)ThisWorkbook.VBProject.VBComponents("XXX").Delete 방법을 사용하여 이러한 유령 시트를 삭제할 수 있습니다.

+0

그래서이 명령을 _BeforeClose 서브와 함께 사용할 수 있습니까? 이 고스트 시트를 자동으로 삭제하는 좋은 방법은 무엇입니까? (시트가 유령인지 아닌지를 결정하는 코드). 귀하의 방법을 시도 할 수있는 기회를 얻었을 때 귀하는 귀하의 의견을 알리고 귀하의 게시물을 답변으로 표시 할 것입니다. 감사합니다. – oshoguno

+0

그것은 나를 위해 작동하지 않았다. 개인 서브 테스트 ThisWorkbook.VBProject.VBComponents ("Sheet10") 삭제 End Sub 무언가를 정의해야합니까? 내가 그것을 타이프하고 기간을 넣으면 나는 옵션의 목록을 얻는다. 그리고 삭제는 그들 중의 1 명이 아니다. – oshoguno

+0

시트 안의 코드가 아직 실행 중이므로 아마도 그렇게 할 수 없습니다. 어떤 Excel 버전을 사용하고 있습니까? –

0

나는 비슷한 문제에 직면했다. 그러므로 나는 도움이되는 경우에 게시 할 것이라고 생각했다. Excel에서 삭제 한 시트가 개체로 존재하고 시트를 수동으로 삭제할 수 없었습니다. 속성을 확인할 때 속성 'Visible'이 2 (xlSheetVeryHidden)로 설정되어 있음을 확인했습니다. -1로 변경 한 다음 모두 삭제할 수있었습니다. 시트를 지우려면 아래 코드를 사용했습니다.

그러나 무엇이 시트를 보이지 않게했는지 확실하지 않습니다. 내 첫 페이지에는 삭제 된 페이지에 대한 참조 링크가있어서 이로 인해 발생할 수 있습니다.

Sub deleteGhosts() 

    Dim wb As Workbook 
    Dim tabname As String 

    Set wb = ThisWorkbook 

    For Each Sheet In wb.Worksheets 
     tabname = Sheet.Name 
     If wb.Worksheets(tabname).Visible = 2 Then 
      MsgBox "Deleting " + tabname 
      wb.Worksheets(tabname).Visible = -1 
      wb.Worksheets(tabname).Delete 
     End If 
    Next Sheet 

End Sub 
+0

답장을 보내 주셔서 감사합니다. 시트가 숨겨져 있지 않습니다. 실제로 나는 그들이 무엇인지 모르지만 시트가 지워지면 그것은 남겨진 것이 무엇이든지 바꿉니다. 속성이 크게 변경됩니다. 두 이미지의 차이를 볼 수 있습니다. ! HTTP :! //i1120.photobucket.com/albums/l490/oshoguno/2014-10-3012_28_00-MicrosoftVisualBasicforApplications-MaintenanceWCR_Lexus_Frontxlsm-She.jpg HTTP : //i1120.photobucket.com/albums/l490/oshoguno /2014-10-3012_28_46-MicrosoftVisualBasicforApplications- 유지 보수 WCR_Lexus_Frontxlsm-She.jpg – oshoguno

관련 문제