Proteger hoja al guardarla desde una Macro

Tengo la siguiente macro para guardar un archivo en formato CSV: lo que quiero es que el libro que guarda baje con protección y que desde la macro se asigne la contraseña, este es el código actual:

Sub Guardar()
Libro1 = ActiveWorkbook.Name
Workbooks.Add
Libro2= ActiveWorkbook.Name
Workbooks(Libro1).Activate
Sheets("CSV File").Range("A:O").Copy
Workbooks(Libro2).Activate
Sheets(1).Range("a1").PasteSpecial Paste:=xlValues
nombre = Day(Date) & "-" & Month(Date) & "-" & Year(Date) & "_" & Hour(Time) & "_" & Minute(Time) & "_" & Second(Time)
ActiveWorkbook.SaveAs nombre, FileFormat:=xlCSV, Password:=Tesr, ReadOnlyRecommended:=False, CreateBackup:=False
ActiveWorkbook.Close False
MsgBox "File Saved"
End Sub

Respuesta
1

[Hola:

Los archivos del tipo *. Csv, por más que puedas crearlos/verlos/abrirlos/etc. en Excel, siguen siendo archivos de texto por lo que no puedes usar en ellos alternativas como la contraseña de apertura o similares. Si te das cuenta Excel te acepta, aparentemente, esa contraseña pero al guardar/cerrar el archivo te advierte que si lo guardas como *. Csv se perderán algunas características como la de la contraseña que estás pensando colocar. Solo funcionará si le das al archivo un formato *.xlsx u otro compatible con ese tipo de protección.

Abraham Valencia
Lima, Perú

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas