2016-10-06 2 views
0

은 어떤 조언을 주셔서 감사합니다 내 코드의 복사본입니다 .오류 선택 셀 범위

Private Sub ClearAll_Click() 
Dim Sheet As Worksheet 
Dim CompareTool As Workbook 
Dim Sheetname As String 
Set CompareTool = ThisWorkbook 

With Application 
    .DisplayAlerts = False 
    .ScreenUpdating = True 
End With 

For Each Sheet In CompareTool.Worksheets 
    If Left(Sheet.Name, 8) = "Scenario" Then 
    Sheetname = Sheet.Name 
     With CompareTool.Sheets(Sheetname) 
     .Visible = True 
     .Range("A1:EC168").Select 
     .Visible = False 
     End With 
    End If 
Next Sheet 

Unload Me 
End Sub 
+0

당신은 숨겨진 워크 시트에서 셀을 선택 할 수 없지만, 그것은 본다 ... –

답변

3

당신은 비활성 시트 Select 아무것도 할 수 없습니다, 그래서 해결책은 시트가 숨겨져 있기 때문에 비록 전에 Select 문에, 내가 뭘의 혜택을 잘 모르겠어요 Activate하는 것

With Sheet 
    .Visible = True 
    .Activate 
    .Range("A1:EC168").Select 
    .Visible = False 
    End With 

... 선택이 만드는 당신은 .Range("A1:EC168").Delete을, 삭제 할 수있는 범위를 선택할 필요가 없습니다. 당신이 그것을 취소 숨어있는 것처럼

With Sheet 
    .Range("A1:EC168").Delete 
    End With 
+0

감사 :이 방법은, 당신도 활성화하거나 볼 수 있도록 할 필요가 없습니다! 나는 단순한 무언가를 놓치고 있다는 것을 알았다. – Greg

+0

@ 그렉 나는 시트가 숨겨져있는 경우 범위를'선택 '하는 이유가 아직도 무엇인지 질문한다. :) –

+0

삭제하기로 선택한 후에 한 줄의 코드를 추가하려고한다. 셀 범위. 방금 코드를 만들려고 노력하면서 그 조각을 삭제했다. – Greg