Hola, tengo un script el cual me comprueba si existe ese fichero y si no existe me lo crea.
Luego quiero que lo vuelva a comprobar cuando lo lance, y si existe que me lo renombre
bien con la fecha actual o simplemente que sea demo.txt, demo1.txt, demo2.txt.
Me podeis ayudar?
Este es mi codigo:
Dim objFS
Set objFS = CreateObject("Scripting.FileSystemObject")
If objFS.FileExists ("C:\Desktop\demo.txt") Then
MsgBox("archivo existe")
Else
MsgBox("archivo NO existe")
Dim objFile
Set objFile = objFS.CreateTextFile("C:\Desktop\demo.txt")
objFile.WriteLine("Ejemplo")
End If
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 fecha
Dim 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")