Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

proteger Excel com Qv macro

Olá Comunidade

Gostaria de saber como posso fazer este processo em QV ..

Tenho uma extensão em um servidor como o "\ \ eros \ Calibração \ Certificados" e ter pastas com nomes de mês e ano, assim CCA0810 ", CCA0910", CCA1010 "e dentro de cada pasta possuem arquivos do Excel

Quero criar uma macro para 2 botões um deles tornar a protecção e outros remover a proteção .. e quando eu escolher o nome do certificado a partir da caixa de listagem que eu posso escolher se eu quero proteger ou remover a proteção

Eu fiz esse processo em VB6, mas também eu quero isso também por QV

como você sabe que dentro VB6 você faz uma variável para a direção como :

Option Explicit
Public path As String

and after that you call your button for protect like that

Sub vblExportar()
Dim olExcel As Object
Set olExcel = CreateObject("excel.application")
olExcel.Workbooks.Open FileName:=path , UpdateLinks:=0

olExcel.ActiveWorkbook.Worksheets("Grafico").Activate
olExcel.Application.DisplayAlerts = False
olExcel.ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, _
AllowFormattingCells:=True, AllowFormattingColumns:=True, _
AllowInsertingRows:=True, AllowInsertingHyperlinks:=True, AllowDeletingColumns:=True, _
AllowDeletingRows:=True, AllowSorting:=True, AllowFiltering:=True, _
AllowUsingPivotTables:=True, Password:="auditoria"
olExcel.Save

olExcel.ActiveWorkbook.Worksheets("Outros").Activate
olExcel.Application.DisplayAlerts = False
olExcel.ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, _
AllowFormattingCells:=True, AllowFormattingColumns:=True, _
AllowInsertingRows:=True, AllowInsertingHyperlinks:=True, AllowDeletingColumns:=True, _
AllowDeletingRows:=True, AllowSorting:=True, AllowFiltering:=True, _
AllowUsingPivotTables:=True, Password:="auditoria"
olExcel.Save
olExcel.SaveWorkspace
olExcel.Workbooks.Close
olExcel.AlertBeforeOverwriting = False
olExcel.DisplayAlerts = False
olExcel.Quit
Exit Sub

Então, como posso fazer isso na QV quando eu selecionar o arquivo de formulário na lista ... obrigado


2 Replies
edu_oliveira
Partner - Contributor III
Partner - Contributor III

Fala Mina. Tudo Bem.

Para resolver este seu problema, aconselharia fazer o seguinte:

a.) Um VB para proteger o arquivo Excel, porém recebendo um parâmetro na abertura,

b.) Um VB para desproteger o arquivo Excel, porém recebendo um parâmetro na abertura,

Criar um botão para cada um dos aplicativos VB, passando junto como parâmetros o caminho & nome do arquivo.

Caso precise de mais detalhes, pode porcurar-me.

Abraços,

Not applicable
Author

Fala Eduardo. tudo bem ?

Eu ja termino processo em VB6 o Cara ja gosto ... tava muito deficil para fazer em qlikview pq tem que quando abrir qual quer Excel ele tem que saber se ta protojedo com senha ou não ... e para colocar este micro não serve como em VB6 .... e tinto ligar para vc various veses .. Abraços brother