Boa tarde à todos!
Utilizo um código que exporta as informações de uma consulta para um excel, a rotina funciona bem.
Tenho uma pequena necessidade, quando gerar o excel, preciso atribuir uma senha de proteção a este arquivo.
Abaixo o código que utilizo.
Public Sub gera_relatorio()
Dim excap As Excel.Application
Dim rs As DAO.Recordset
Dim filename, nomerel As String
Dim linha As String
filename = "Caminho_do_arquivo"
Set excap = CreateObject("Excel.Application")
excap.Visible = False
Workbooks.Add filename
' Relatório XPTO
Sheets("XXX").Visible = True
Sheets("XXX").Select
Rows("2:65356").Select
Selection.Delete Shift:=xlUp
Set rs = CurrentDb.OpenRecordset("XXXyyy")
rs.MoveFirst
linha = 2
Do While rs.EOF = False
Range("A" & linha) = rs![XXX]
Range("B" & linha) = rs![XXX]
Range("C" & linha) = rs![XXX]
Range("D" & linha) = rs![XXX]
Range("D" & linha).Select
Selection.Style = "Comma"
Range("E" & linha) = rs![XXX]
Range("E" & linha).Select
Selection.Style = "Comma"
Range("F" & linha) = rs![XXX]
Range("F" & linha).Select
Selection.NumberFormat = "dd-mmm-yy"
Range("G" & linha) = rs![XXX]
Range("G" & linha).Select
Selection.NumberFormat = "dd-mmm-yy"
Range("H" & linha) = rs![XXX]
Range("I" & linha) = rs![XXX]
Range("J" & linha) = rs![XXX]
Range("J" & linha).Select
Selection.Style = "Comma"
Range("K" & linha) = rs![XXX]
linha = linha + 1
rs.MoveNext
Loop
rs.Close
Columns("E:E").Select
Selection.Font.Bold = False
Selection.Font.Bold = True
Range("A1").Select
nomerel = filename
ActiveWorkbook.SaveAs nomerel, xlNormal
Workbooks.Close
MsgBox "Relatório gerado com sucesso!"
End Sub
Utilizo um código que exporta as informações de uma consulta para um excel, a rotina funciona bem.
Tenho uma pequena necessidade, quando gerar o excel, preciso atribuir uma senha de proteção a este arquivo.
Abaixo o código que utilizo.
Public Sub gera_relatorio()
Dim excap As Excel.Application
Dim rs As DAO.Recordset
Dim filename, nomerel As String
Dim linha As String
filename = "Caminho_do_arquivo"
Set excap = CreateObject("Excel.Application")
excap.Visible = False
Workbooks.Add filename
' Relatório XPTO
Sheets("XXX").Visible = True
Sheets("XXX").Select
Rows("2:65356").Select
Selection.Delete Shift:=xlUp
Set rs = CurrentDb.OpenRecordset("XXXyyy")
rs.MoveFirst
linha = 2
Do While rs.EOF = False
Range("A" & linha) = rs![XXX]
Range("B" & linha) = rs![XXX]
Range("C" & linha) = rs![XXX]
Range("D" & linha) = rs![XXX]
Range("D" & linha).Select
Selection.Style = "Comma"
Range("E" & linha) = rs![XXX]
Range("E" & linha).Select
Selection.Style = "Comma"
Range("F" & linha) = rs![XXX]
Range("F" & linha).Select
Selection.NumberFormat = "dd-mmm-yy"
Range("G" & linha) = rs![XXX]
Range("G" & linha).Select
Selection.NumberFormat = "dd-mmm-yy"
Range("H" & linha) = rs![XXX]
Range("I" & linha) = rs![XXX]
Range("J" & linha) = rs![XXX]
Range("J" & linha).Select
Selection.Style = "Comma"
Range("K" & linha) = rs![XXX]
linha = linha + 1
rs.MoveNext
Loop
rs.Close
Columns("E:E").Select
Selection.Font.Bold = False
Selection.Font.Bold = True
Range("A1").Select
nomerel = filename
ActiveWorkbook.SaveAs nomerel, xlNormal
Workbooks.Close
MsgBox "Relatório gerado com sucesso!"
End Sub