Forçando seus clientes a habilitar macros do Excel

Forçando seus clientes a habilitar macros do Excel

Para usar qualquer macro no Excel, seus usuários devem habilitar macros. Ou seja, eles devem dar permissão ao Excel para executar macros em seu ambiente. Para habilitar macros, os usuários clicam no botão Habilitar Conteúdo no aviso de segurança que aparece acima da barra de fórmulas.

Forçando seus clientes a habilitar macros do Excel

O resultado final é que você pode escrever todas as macros sofisticadas do mundo, mas elas nunca serão executadas a menos que seus usuários habilitem as macros. Isso levanta a questão; você pode forçar os usuários a habilitar macros? A resposta é sim - com um pouco de malandragem.

A ideia é relativamente simples. Você cria uma planilha chamada, digamos, START. Essa planilha contém apenas um aviso simples informando que as macros devem ser habilitadas. Em seguida, você oculta todas as planilhas da pasta de trabalho, exceto a planilha INICIAL. Por fim, você escreve uma macro simples que exibe todas as planilhas quando a pasta de trabalho é aberta.

Forçando seus clientes a habilitar macros do Excel

Nesse ponto, quando a pasta de trabalho for aberta, o Excel solicitará que o usuário habilite as macros. Os usuários serão forçados a fazer isso porque tudo o que verão é a sua planilha inicial. As outras planilhas ficarão ocultas!

Para fazer essa técnica funcionar, você precisa de duas macros: uma macro oculta tudo, exceto a planilha INICIAL, quando a pasta de trabalho é fechada, e outra macro, que exibe tudo, exceto a planilha INICIAL, quando a pasta de trabalho é aberta.

Primeiro, analise as ações que precisam acontecer quando a pasta de trabalho é fechada. :

Ative o Editor do Visual Basic pressionando ALT + F11 no teclado

Na janela Projeto, encontre o nome do seu projeto / pasta de trabalho e clique no sinal de mais próximo a ele para ver todas as planilhas.

Clique em ThisWorkbook.

Na caixa suspensa Evento, selecione o evento BeforeClose.

Forçando seus clientes a habilitar macros do Excel

Digite ou cole o seguinte código:

Private Sub Workbook_BeforeClose (Cancelar como Booleano)
'Passo 1: Declare suas variáveis
  Dim ws como planilha
'Etapa 2: Reexibir a folha inicial
  Planilhas ("INICIAR"). Visível = xlSheetVisible
'Etapa 3: comece a percorrer todas as planilhas
  Para cada ws neste livro de trabalho.Fichas de trabalho
'Etapa 4: Verifique o nome de cada planilha
  Se ws.Name <> "START" então
'Passo 5: Ocultar a folha
  ws.Visible = xlVeryHidden
  Fim se
'Etapa 6: Loop para a próxima planilha
  Próximo ws
'Etapa 7: Salvar a pasta de trabalho
  ActiveWorkbook.Save
End Sub

Na Etapa 1, você declara um objeto chamado ws para criar um contêiner de memória para cada planilha que percorrerá.

Na Etapa 2, você garante que a folha INICIAL esteja visível.

Na Etapa 3, você inicia o loop, informando ao Excel que deseja avaliar todas as planilhas desta pasta de trabalho.

Na Etapa 4, você simplesmente compara o nome START com a planilha que está sendo repetida no momento. Esta etapa garante que as ações a seguir sejam aplicadas a todas as planilhas, exceto à planilha INICIAL.

Se os nomes das folhas forem diferentes, na Etapa 5 você oculta a folha usando a propriedade xlVeryHidden. Essa propriedade não apenas oculta a planilha, mas também evita que o usuário a reexibir manualmente usando a interface do usuário.

Você volta para obter a próxima folha na Etapa 6.

Na Etapa 7, depois que todas as planilhas são avaliadas, a macro salva a pasta de trabalho e termina.

Agora, você precisa escrever uma macro para lidar com todas as ações que precisam acontecer quando a pasta de trabalho é aberta:

Ative o Editor do Visual Basic pressionando ALT + F11.

Na janela Projeto, encontre o nome do seu projeto / pasta de trabalho e clique no sinal de mais próximo a ele para ver todas as planilhas.

Clique em ThisWorkbook.

Na caixa suspensa Evento, selecione o evento Aberto.

Forçando seus clientes a habilitar macros do Excel

Digite ou cole o seguinte código:

Sub Workbook_Open ()
'Passo 1: Declare suas variáveis
  Dim ws como planilha
'Etapa 2: comece a percorrer todas as planilhas
  Para cada ws neste livro de trabalho.Fichas de trabalho
'Etapa 3: Reexibir todas as planilhas
  ws.Visible = xlSheetVisible
'Etapa 4: Loop para a próxima planilha
  Próximo ws
'Passo 5: Ocultar a folha inicial
  Planilhas ("INICIAR"). Visível = xlVeryHidden
End Sub

Na Etapa 1, você declara um objeto chamado ws para criar um contêiner de memória para cada planilha que percorre.

Na Etapa 2, você inicia o loop, informando ao Excel que deseja avaliar todas as planilhas nesta pasta de trabalho.

Na Etapa 3, você exibe a planilha que está sendo executada em loop. Esta etapa exibe efetivamente todas as planilhas à medida que cada planilha se torna visível.

Você volta para obter a próxima folha na Etapa 4.

Depois que todas as folhas estiverem visíveis, a Etapa 5 oculta a folha INICIAR. Novamente, você usa a propriedade xlVeryHidden para que o usuário não consiga reexibir manualmente a planilha usando a interface do usuário.

Depois que as duas macros forem implementadas, você terá uma pasta de trabalho que funcionará apenas se o usuário habilitar as macros!


Smartsheet 9.1.1

Smartsheet 9.1.1

Smartsheet é uma plataforma de trabalho dinâmica que permite gerenciar projetos, criar fluxos de trabalho e colaborar com sua equipe.

SharePoint

SharePoint

SharePoint é um sistema de colaboração baseado na web que usa uma variedade de aplicativos de fluxo de trabalho, bancos de dados de “lista” e outros componentes da web, bem como recursos de segurança para dar controle ao trabalho conjunto de grupos empresariais.

Calendário Perpétuo 1.0.38/1.0.36

Calendário Perpétuo 1.0.38/1.0.36

Van Nien Calendar é um aplicativo de visualização de calendário em seu telefone, ajudando você a ver rapidamente a data lunisolar em seu telefone, organizando assim seu trabalho importante.

Microsoft Outlook 2021

Microsoft Outlook 2021

O Microsoft Outlook é um aplicativo comercial e de produtividade desenvolvido pela Microsoft Corporation.

Clique para cima

Clique para cima

ClickUp é uma das plataformas de produtividade mais bem avaliadas para qualquer empresa. Grandes empresas como Google, Booking.com, San Diego Padres e Uber usam ClickUp para aumentar a produtividade no local de trabalho.

Visualizador PDF-XChange 2.5.322.10

Visualizador PDF-XChange 2.5.322.10

PDF se tornou um formato comumente usado para leitura, criação e envio de documentos de texto. Por sua vez, tem havido um aumento no número de programas utilizados para este tipo de documentação. PDF-XChange Viewer está entre um número crescente de visualizadores de PDF.

Apache Open Office

Apache Open Office

Apache OpenOffice oferece um conjunto completo de aplicativos Office que rivalizam com o Microsoft 365, especialmente em Excel, PowerPoint e Word. Ele permite que você gerencie seus projetos de forma mais eficaz e suporta diversos formatos de arquivo.

Baixar iTaxviewer 1.8.7

Baixar iTaxviewer 1.8.7

O software iTaxViewer é o software de leitura de arquivos XML mais popular atualmente. Este software é uma aplicação para leitura de declarações fiscais eletrónicas em formato XML da Direção Geral de Impostos.

Leitor de PDF Nitro

Leitor de PDF Nitro

Nitro PDF Reader é um prático editor de PDF que cobre todas as tarefas básicas que a maioria das pessoas realiza todos os dias com documentos PDF.

Leitor Foxit 12

Leitor Foxit 12

Foxit Reader é principalmente um leitor de PDF e também permite criar arquivos PDF, assiná-los, editá-los e adicionar anotações. Funciona em sistemas operacionais, existem plugins para diversos programas do pacote Microsoft Office.