Я не думаю, что вы думали об этом вообще.Вы просто добавили код и разместили его.Я уже прокомментировал цикл For Each.В If Else вы делаете то же самое в If, что и в Else, за исключением того, что вы увеличиваете fileNumber, но никогда не используете fileNumber.
Требуется Imports System.IO
вверху файла.
Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
Dim FileNum As Integer
Do
Dim fileToTest = "C:\Desktop\Testing" & FileNum.ToString & ".xlsx"
If File.Exists(fileToTest) Then
FileNum += 1
Else
SaveExcelFile(fileToTest)
Exit Do
End If
Loop
End Sub
Private Sub SaveExcelFile(fullPath As String)
'Your code to save the file and close excel
End Sub
Теперь на каждой итерации цикла Do у вас будет новое имя файла для тестирования.Когда он находит тот, который не существует, вы переходите к своему коду сохранения, передавая в новом имени файла.