2012-03-23 6 views
1

특정 시트의 가용성 여부를 확인할 수 있는지 궁금합니다. 주변에 있다면 나머지 코드와 함께 계속 진행됩니다. 주변에 있지 않으면 시트에 추가됩니다.시트 이름이 주위에 있는지 확인할 수 있습니까?

나는 그것을 생각했지만 오류가 발생했습니다. u를 알면 몇 가지 정보를 공유하십시오! 감사!

sub macro1() 
If sheets("Test") = False Then 
Sheets.Add.Name = "Test" 
End If 
'Run my code 
End Sub 

답변

3

이렇게하면? 통합 문서 객체와이 후 있어 시트의 이름을 받아 - -

Sub Sample() 
    Dim ws As Worksheet 

    On Error Resume Next 
    Set ws = Sheets("Test") 
    On Error GoTo 0 

    If ws Is Nothing Then 
     Set ws = Sheets.Add 
     ws.Name = "Test" 
    End If 

    '~~> Run your code 
End Sub 
+0

예! 고마워 .. 그게 내가 필요로하는 .. 고마워! 다행스럽게도 나는 이것을 사용하여 다른 문제를 해결할 수 있습니다! – user1204868

1

또 다른 방법은 ... 하는 함수를 만들 시트가 통합 문서에서 발견 된 경우 반환 트루을

Function SheetExists(oWorkbook As Workbook, sSheetname As String) 

    Dim oWs As Worksheet 
    For Each oWs In oWorkbook.Worksheets 
     If oWs.Name = sSheetname Then 
      SheetExists = True 
      Exit Function 
     End If 
    Next 

End Function 

Sub TestSheetExists() 
    If SheetExists(ActiveWorkbook, "Bob") Then 
     MsgBox "Found it" 
    Else 
     MsgBox "No joy" 
    End If 
End Sub 
관련 문제