Notifications
Clear all

Macro para apagar Abas

6 Posts
2 Usuários
0 Reactions
912 Visualizações
 Djô
(@djo)
Posts: 3
New Member
Topic starter
 

Como faço para uma macro apagar algumas "Abas" se o valor de A1>=10 ?
A macro deve executar automaticamente se o valor de A1 for superior a 10 ..

 
Postado : 24/06/2016 1:04 pm
EdsonBR
(@edsonbr)
Posts: 1057
Noble Member
 

A1 tem um dado inserido ou um resultado de cálculo (tipo uma fórmula)?

 
Postado : 24/06/2016 1:15 pm
 Djô
(@djo)
Posts: 3
New Member
Topic starter
 

resultado de um cálculo ... Hoje() - data da resposta do teste. Se o teste foi respondido há mais de 10 dias, quero que ao abrir a planilha sejam apagadas algumas abas

 
Postado : 24/06/2016 1:17 pm
EdsonBR
(@edsonbr)
Posts: 1057
Noble Member
 

Primeiro vamos definir exatamente quando vc quer que a macro seja executada, pq são métodos diferentes: se ao ocorrer um cálculo que altere A1 ou se ao abrir a Pasta de trabalho e contiver o valor A1. Usam eventos diferentes.

 
Postado : 24/06/2016 1:31 pm
 Djô
(@djo)
Posts: 3
New Member
Topic starter
 

Se ao abrir a planilha e o valor contido em A1 for >10 (resultado de um cálculo de datas), quero que a aba "Teste" seja apagada. Se ao abrir o valor calculado de A1 for inferior a 10, não faço nada

 
Postado : 24/06/2016 1:38 pm
EdsonBR
(@edsonbr)
Posts: 1057
Noble Member
 

Djô, abra o VBA e insira o código clicando duas vezes no objeto EstaPasta_de_Trabalho (lado esquerdo).

Private Sub Workbook_Open()
  If Me.Worksheets("Planilha1").Range("A1").Value >= 10 Then
    Application.DisplayAlerts = False
      Me.Worksheets("Teste").Delete 'Faça tratamento de erro caso a planilha "Teste" não exista
    Application.DisplayAlerts = True
  End If
End Sub

Lembre-se de que se Teste não existir, dará erro. Basta fazer um tratamento de erro ou um loop pelas planilhas antes prá saber se ela existe.

 
Postado : 24/06/2016 1:56 pm