la verda yo creí la opcion rename era una función donde llamabas un procedimiento de windows no me había percatado de que lo unico que estas haciendo es darle vuelta el asunto..
en este momento no se que lo que en realidad queres hacer, porque con eso no le podes cambiar nombre a un directorio unicamente al varible directorio que eso es otra cosa, lo que estas tratando de hacer es una funcion que te devuelva el nombre unicamente del nombre de como quedaría la carpeta con su nuevo nombre eso sería algo asi.
Código:
Function Rename(OldName As String) As String
NombreStr = Format$(Date, "yyyymmdd")
NewName = "C:\ejemplo\" & NombreStr
Rename = NewName
' Muevo y renombro archivo
End Function
Private Sub ren_Click()
MsgBox Rename("C:\ejemplo\renom")
End Sub
el resultado de esto te tendría que servir para renombarar el archivo, pero no directamente lo vas a renombrar.
para renombrar un archivo es algo asi.
Código:
Dim oFSO As FileSystemObject
Dim sSourceFile As String
Dim sDestinationFile As String
Set oFSO = CreateObject("Scripting.FileSystemObject")
sSourceFile = "C:\SourceFile.txt"
sDestinationFile = "C:\DestinationFile.txt"
oFSO.MoveFile sSourceFile, sDestinationFile
Set oFso = Nothing
pero en realidad no se que queres hacer..