Este código crea el archivo y si existe le añade un número. Si ya existe con ese número le incrementa un número más. Por ejemplo si hay demo.txt, crea demo(1).txt, si ya existe demo.txt y demo(1).txt, crea demo(2).txt. Si existe demo(1).txt y no existe demo.txt, crea demo.txt, luego creará demo(2).txt porque ya existe demo(1).txt
Dim objFS
Dim sFileName As String
Dim sPath As String
Dim sExt As String
Dim num As Integer
Dim sFilePath As String
sFileName = "demo"
sExt = "txt"
sPath = "C:\Desktop"
sFilePath = sPath & "\" & sFileName & "." & sExt
num = 0
Set objFS = CreateObject("Scripting.FileSystemObject")
'Si el archivo existe añade un número
'y si tiene un número busca otro número que no exista
If objFS.FileExists(sFilePath) Then
While objFS.FileExists(sFilePath)
num = num + 1
sFilePath = sPath & "\" & sFileName & "(" & num & ")" & "." & sExt
Wend
End If
'Crea el archivo
Dim objFile As Object
Set objFile = objFS.CreateTextFile(sFilePath)
objFile.WriteLine ("Ejemplo")
Lo mismo pero con fechaDim objFS
Dim sFileName As String
Dim sPath As String
Dim sExt As String
Dim num As Integer
Dim sFilePath As String
sFileName = "demo" & "_" & Format(DateTime.Date, "dd-mm-yyyy")
sExt = "txt"
sPath = "C:\Desktop"
sFilePath = sPath & "\" & sFileName & "." & sExt
num = 0
Set objFS = CreateObject("Scripting.FileSystemObject")
'Si el archivo existe añade un número
'y si tiene un número busca otro número que no exista
If objFS.FileExists(sFilePath) Then
While objFS.FileExists(sFilePath)
num = num + 1
sFilePath = sPath & "\" & sFileName & "(" & num & ")" & "." & sExt
Wend
End If
'Crea el archivo
Dim objFile As Object
Set objFile = objFS.CreateTextFile(sFilePath)
objFile.WriteLine ("Ejemplo")