Note: The other languages of the website are Google-translated. Back to English
Log in  \/ 
x
or
x
Inscreva-se  \/ 
x

or

Como desativar ou não permitir as opções Salvar e Salvar como no Excel?

Normalmente, quando clicamos na função Salvar ou Salvar como, nossos dados modificados na pasta de trabalho serão salvos imediatamente. Mas, às vezes, seu arquivo do Excel não pode ser modificado e salvo por outros usuários quando eles leem o arquivo. Este artigo fornece o método VBA para desativar as opções Salvar e Salvar como no Excel.

Desative as opções Salvar e Salvar como com o código VBA


Desative as opções Salvar e Salvar como com o código VBA

Você pode executar o código VBA abaixo para desativar as opções Salvar e Salvar como no Excel.

1. Na pasta de trabalho, você precisa desativar as funções Salvar e Salvar como, pressione outro + F11 simultaneamente para abrir o Microsoft Visual Basic para Aplicações janela.

2. No Microsoft Visual Basic para Aplicações janela, clique duplo ThisWorkbook na barra esquerda, copie e cole o VBA 1 abaixo na janela de código e clique no botão Salvar botão. Veja a imagem:

VBA 1: desative as opções Salvar e Salvar Como no Excel

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    ThisWorkbook.Saved = True
End Sub

3. Na abertura Salvar como janela, selecione uma pasta para salvar a pasta de trabalho, nomeie a pasta de trabalho como você precisa e selecione Pasta de trabalho habilitada para macro do Excel de Salvar como tipo lista suspensa e, finalmente, clique no Salvar botão.

4. Agora copie e cole o VBA 2 abaixo no ThisWorkbook janela de código. Veja a imagem.

VBA 2: desative as opções Salvar e Salvar Como no Excel

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim xName As String
xName = "CancelBeforeSave"

If Not Evaluate("=ISREF('" & xName & "'!A1)") Then
    Sheets.Add(after:=Worksheets(Worksheets.count)).Name = xName & ""
    Sheets(xName & "").Move after:=Worksheets(Worksheets.count)
    Sheets(xName & "").Visible = False
    Exit Sub
End If
    Cancel = True
End Sub

5. Clique na Salvar para salvar o código e feche a pasta de trabalho.

A pasta de trabalho foi salva como uma pasta de trabalho habilitada para macro do Excel com o Salvar e Salvar como funções desativadas.

Importante: Parece que as alterações são salvas na planilha atual toda vez que você modifica e salva a pasta de trabalho. Mas depois de fechar e reabrir a pasta de trabalho, você descobrirá que as alterações não foram salvas.


As melhores ferramentas de produtividade para escritório

O Kutools for Excel resolve a maioria dos seus problemas e aumenta sua produtividade em 80%

  • armadilha para peixes: Insira rapidamente fórmulas complexas, gráficos e qualquer coisa que você tenha usado antes; Criptografar células com senha; Criar lista de discussão e enviar emails ...
  • Super Formula Bar (edite facilmente várias linhas de texto e fórmula); Layout de leitura (ler e editar facilmente um grande número de células); Colar na faixa filtrada...
  • Mesclar células / linhas / colunas sem perder dados; Dividir o conteúdo das células; Combinar linhas / colunas duplicadas... Evite células duplicadas; Comparar intervalos...
  • Selecione Duplicado ou Único Linhas; Selecione linhas em branco (todas as células estão vazias); Super Find e Fuzzy Find em muitos livros; Seleção aleatória ...
  • Cópia exata Várias células sem alterar a referência da fórmula; Criação automática de referências para várias folhas; Inserir marcadores, Caixas de seleção e mais ...
  • Extrair Texto, Adicionar texto, remover por posição, Remover Espaço; Criar e imprimir subtotais de paginação; Converter entre conteúdo de células e comentários...
  • Super Filtro (salvar e aplicar esquemas de filtro a outras planilhas); Classificação Avançada por mês / semana / dia, frequência e mais; Filtro Especial por negrito, itálico ...
  • Combine pastas de trabalho e planilhas; Mesclar tabelas com base em colunas-chave; Divida os dados em várias folhas; Conversão em lote de xls, xlsx e PDF...
  • Mais de 300 recursos poderosos. Suporta Office / Excel 2007-2019 e 365. Suporta todos os idiomas. Fácil implantação em sua empresa ou organização. Teste gratuito de 30 dias com recursos completos. Garantia de devolução do dinheiro em 60 dias.
guia kte 201905

Guia do Office traz interface com guias para o Office e torna seu trabalho muito mais fácil

  • Habilite a edição e leitura com guias em Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Abra e crie vários documentos em novas guias da mesma janela, em vez de em novas janelas.
  • Aumenta sua produtividade em 50% e reduz centenas de cliques do mouse para você todos os dias!
officetab bottom
Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Joe · 5 months ago
    Please, I do not want someone to copy or save my excel file, how can I remove save or save as?

  • To post as a guest, your comment is unpublished.
    Madhusudhan · 7 months ago
    Hello I am a fan of this website...I used to try the code. It works flawlessly. But it disables "Save option" too. I am not able to save the Excel sheet. What I need is to disable only the feature "Save As" I read the other user's comments too. ThisWorkbookSaved = True is not working for me as well. Could you please help? Thanks a lot for all your contributions.
  • To post as a guest, your comment is unpublished.
    Naomi · 1 years ago
    I keep getting debug error
    • To post as a guest, your comment is unpublished.
      crystal · 1 years ago
      Good day,
      Which Excel version do you use?
  • To post as a guest, your comment is unpublished.
    Rogue · 3 years ago
    Just to help whoever else reads this article looking for help with suppressing the save button I thought I'd place the answer down here as "Crystal" doesn't seem to be answering the question....


    If you place the workbook in "Design Mode" and then hit SAVE it should work.
    • To post as a guest, your comment is unpublished.
      crystal · 3 years ago
      Dear Rogue,
      I miss the point of the problem. Thank you so much for your help and sharing.

      Best Regards
  • To post as a guest, your comment is unpublished.
    What they said · 3 years ago
    As TEE and LES posted, how do we save the file with the macro in?
    • To post as a guest, your comment is unpublished.
      crystal · 3 years ago
      Hi,
      Thank you for your question. The article is updated to support saving the code into workbook now.
  • To post as a guest, your comment is unpublished.
    Les Battersthee · 3 years ago
    As TEE posted, how do we save the file with the macro in? It is not there when I reopen. I am also now getting a bug on the ThisWorkbookSaved = True bit.
    • To post as a guest, your comment is unpublished.
      crystal · 3 years ago
      Dear Les,
      Thank you for your question. The article is updated to support saving the code into workbook now.
  • To post as a guest, your comment is unpublished.
    tee · 4 years ago
    this doesn't work. I can't save the code it's gone once I reopen the file. How do I save the code?
    • To post as a guest, your comment is unpublished.
      crystal · 3 years ago
      Dear tee,
      Thank you for your question. The article is updated to support saving the code into workbook now.
      • To post as a guest, your comment is unpublished.
        jen · 2 years ago
        dear
        the article is not updated. it doesnt work
        • To post as a guest, your comment is unpublished.
          crystal · 2 years ago
          Hi jen,
          The article has been updated again with the problem solving. Please have a try. Thank you for your comment.
          • To post as a guest, your comment is unpublished.
            I.C. Problems · 1 years ago
            The update to the code adds a sheet, but never actually checks whether there is a TRUE/FALSE value in that sheet. The update fixes nothing, it just creates a useless sheet within the workbook.

            I think you forgot to do a check whether there is a TRUE/FALSE value on that sheet.