Ao gerar relatórios em planilhas eletrônicas é muito útil fazê-lo tornando-as somente leitura. Como? Segue:
Function MakeFileReadOnly (ByVal sFile As String)
Dim strSaveFilename As String
Dim oFSO As Object 'Scripting.FileSystemObject
Dim oFile As Object 'Scripting.File
' Create Objects
' Uses Late Binding
Set oFSO = CreateObject("Scripting.FileSystemObject")
Set oFile = oFSO.GetFile(FilePath:=sFile)
' Set file to be read-only
oFile.Attributes = 1
' Releasing Objects
If Not oFSO Is Nothing Then Set oFSO = Nothing
If Not oFile Is Nothing Then Set oFile = Nothing
End Function
Esta funcionalidade não está restrita ao MS Excel, pode ser usada com outros arquivos.
Reference:
Tags: VBA, Excel, readonly, file