Function CheckIfSheetExist(wkb As Workbook, SheetName As String) As Boolean
    
    Dim i As Integer
    
    CheckIfSheetExist = False
    For i = 1 To wkb.Sheets.Count
        If Left(wkb.Sheets(i).Name, Len(SheetName)) = SheetName Then
            CheckIfSheetExist = True
            Exit For
        End If
    Next i

End Function

Function AddNewSheet(wkb As Workbook, SheetName As String) As Boolean

    Dim newSheet As Worksheet
    
    If SheetName = "" Then Exit Function
    If CheckIfSheetExist(wkb, SheetName) = True Then Exit Function
    
    Set newSheet = wkb.Sheets.Add(After:=wkb.Sheets(wkb.Sheets.Count))
    newSheet.Name = SheetName
    
    Set newSheet = Nothing

End Function

 

Function RangeNameExists(ByVal pstrRangeName) As Boolean

    Dim lngMaxNames As Long
    Dim lngCount As Long
    
    On Error Resume Next
    
    RangeNameExists = False
    
    lngMaxNames = ThisWorkbook.Names.Count
    
    For lngCount = 1 To lngMaxNames
        If UCase(ThisWorkbook.Names.Item(lngCount).Name) = UCase(pstrRangeName) Then
            RangeNameExists = True
            Exit For
        End If
    Next

End Function