Thanks Ken with CDate() and a little tweaking I was able to get it done. Although probably not the most effiecient way to get it done it works.
For x = 3 To SheetCount
sheetname = Left(Sheets(x).Name, 12)
currentdate = CDate(sheetname)
If x < SheetCount Then
sheetname2 = Left(Sheets(x + 1).Name, 12)
End If
nextdate = CDate(sheetname2)
If newgamedate > currentdate And newgamedate < nextdate Then
Sheets(x).Copy after:=Sheets(x)
ActiveSheet.Name = newdate
GoTo z
End If
If newgamedate < currentdate Then
Sheets(x).Copy before:=Sheets(x)
ActiveSheet.Name = newdate
GoTo z
End If
If newgamedate > Sheets(SheetCount).Name Then
Sheets(x).Copy after:=Sheets(SheetCount)
ActiveSheet.Name = newdate
GoTo z
End If
If currentdate = newgamedate Then
a = Len(Sheets(x).Name)
countsheet = 0
For Each WS In ThisWorkbook.Worksheets
If StrComp(Left(WS.Name, 12), newdate, vbTextCompare) = 0 Then
countsheet = countsheet + 1
End If
Next WS
If countsheet > 0 Then 'if there is 1 or more existing sheets for the same date
Sheets(x).Name = newdate & "(1)" 'this will add "(1)" to the 1st sheet with the same date
Sheets(x).Copy after:=Sheets(newdate & "(" & countsheet & ")")
GoTo z
Else
Sheets(x).Name = newdate & "(1)" 'if the new game is on the same day as the original,
Sheets(x).Copy before:=Sheets(x + 1) 'this adds "(1)" to the original
End If
End If
Next x
End