KutoolsforOffice — Uma solução, cinco ferramentas poderosas.Fazer mais com menos esforço.

Como impedir a gravação se uma célula específica estiver em branco no Excel?

AutoraKelly Data de Modificação

Imagine que criou um formulário no Excel e o partilhou com os seus colegas. Pretende que cada um preencha o seu nome numa célula específica, de modo a identificar quem introduziu a informação. Caso essa célula fique em branco, quer impedir que o formulário seja guardado. Neste tutorial, mostro-lhe como usar uma macro VBA para bloquear o processo de gravação sempre que a célula designada estiver vazia no Excel.


seta azul para a direita com balãoImpedir a gravação se uma célula específica estiver em branco no Excel

Para impedir que o Livro de Trabalho Atual seja gravado quando uma célula específica estiver em branco no Excel, basta aplicar facilmente a seguinte macro VBA.

Passo 1: Abra a janela do Microsoft Visual Basic for Applications premindo simultaneamente as teclas Alt+F11.

Passo 2: No Explorador de Projetos, expanda VBAProject (O seu Nome da Pasta de Trabalho.xlsm) e Microsoft Excel Objetos e, em seguida, faça duplo clique em ThisWorkbook. Veja a imagem:

Uma captura de ecrã da janela ThisWorkbook no editor VBA

Passo 3: Na janela ThisWorkbook aberta, cole a seguinte macro VBA:

Macro VBA: Impedir a gravação se uma célula específica estiver em branco

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
'Update by ExtendOffice 20220907
Dim xFileName As String
Dim xStr As String
Dim xStrWSH As String
Dim xWSh As Worksheet
Dim xWShs As Sheets
Dim xWSh1 As Worksheet
Dim xWB As Workbook

xStrWSH = "xHidWSH_LJY"
On Error Resume Next
Set xWB = Application.ActiveWorkbook
Set xWShs = xWB.Worksheets
Set xWSh = xWShs.Item(xStrWSH)

If xWSh Is Nothing Then

  Set xWSh1 = xWShs.Add
  xWSh1.Name = xStrWSH
  xWSh1.Visible = xlSheetVeryHidden
  Cancel = False

Else

  If Trim(Application.Sheets("Sheet1").Range("A1").Value) = "" Then
  Cancel = True
  MsgBox "Save cancelled"
  End If

End If

End Sub
Nota:
1. Na linha 26 do código VBA acima, o "Sheet1"é a Nome da Planilha específica e o "A1é a célula específica; pode alterá-la conforme necessário.
2. Depois de introduzir o código VBA em ThisWorkbookDeverá primeiro guardar o livro e só depois poderá enviar o ficheiro com macros ativadas para outras pessoas.

Agora, se a célula específica estiver em branco no Livro de Trabalho Atual, aparecerá uma caixa de diálogo de aviso com a mensagem «Gravação cancelada» ao tentar guardar. Veja a seguinte imagem:

Uma captura de ecrã de uma caixa de diálogo de aviso no Excel com a mensagem 'Guardado cancelado' ao tentar guardar com uma célula em branco


seta azul para a direita com balãoArtigos relacionados

As Melhores Ferramentas de Produtividade para o Office

🤖KUTOOLS AI Assistente: Revolucione o Análise de Dados com base em:Execução Inteligente   |  Gerar Código|  Criar fórmulas personalizadas  |  Analisar Dados e Gerar Gráficos|  Invocar Funções Aprimoradas
Funcionalidades Populares:Localizar, Destacar ou Marcar Duplicatas   |  Excluir linhas em branco   |  Combinar Colunas ou Células sem Perder Dados   |   Arredondamento sem usar fórmula...
Super PROC:VLookup com Múltiplos Critérios  |  VLookup com Múltiplos Valores  |   VLookup em Múltiplas Folhas   |   Correspondência Fuzzy....
Lista Suspensa Avançada:Criar Rapidamente Lista de Seleção   |  Lista de Seleção Dependente   |  Lista de Seleção com Múltipla Escolha....
Gestor de Colunas:Adicionar um Número Específico de Colunas|Mover Colunas|Alternar Estado de Visibilidade de Colunas Ocultas|Comparar Intervalos e Colunas...
Funcionalidades em Destaque:Grade de foco   |  Visualização de Design   |Barra de fórmulas aprimorada   | Gestor de Pastas de Trabalho e Folhas   |  Biblioteca de Recursos(Texto Automático)|  Seleção de Data   |  Consolidar Planilhas  |  Encriptar/Descriptografar Células   | Enviar Emails por Lista   |  Super Filtro   |   Filtro Especial(Filtrar Células com Fonte em Negrito/itálico/rasurado...) ...
Principais Conjuntos de Ferramentas 15:12 Ferramentasde Texto(Adicionar Texto,Excluir Caracteres Específicos, ...)|   50+Tiposde Gráfico(Gráfico de Gantt, ...)|   40+ Fórmulas Práticas(Calcular a idade com base na data de nascimento, ...)|   19 Ferramentasde Inserção(Inserir QR Code,Inserir Imagem a Partir do Caminho, ...)|   12 Ferramentasde Conversão(Converter em Palavras,Conversão de moeda, ...)|   7 Ferramentasde Mesclar e Dividir(Mesclar Linhas Avançado,Dividir Células, ...)|... e muito mais
Utilize o Kutools na sua língua preferida – suporta inglês, espanhol, alemão, francês, chinês e mais 40+ idiomas!

Potencie as suas competências no Excel com Kutools para Excel e experimente uma eficiência como nunca antes.Kutools para Excel Oferece mais de 300 funcionalidades avançadas para impulsionar a produtividade e Economizar Tempo.Clique aqui para obter a funcionalidade de que mais precisa...


Office Tab Traz uma interface com separadores para o Office e torna o seu trabalho muito mais fácil

  • Ative a edição e leitura com separadores no Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Abra e crie vários documentos em novos separadores da mesma janela, em vez de em janelas separadas.
  • Aumente a sua produtividade em 50 % e elimine centenas de cliques do rato todos os dias!

Todos os suplementos Kutools — num único instalador.

Kutools for Office reúne suplementos para Excel, Word, Outlook e PowerPoint, além do Office Tab Pro, sendo a solução ideal para equipas que trabalham em várias aplicações do Office.

ExcelWordOutlookTabsPowerPoint
  • Pacote tudo-em-um— suplementos para Excel, Word, Outlook e PowerPoint + Office Tab Pro
  • Um instalador, uma licença— configuração em minutos (pronto para MSI)
  • Funciona melhor em conjunto— produtividade simplificada em todas as aplicações do Office
  • Teste gratuito de 30 dias com todas as funcionalidades— sem registo, sem cartão de crédito
  • Melhor relação qualidade-preço— poupe face à compra individual dos suplementos