none
Excluir planilha da pasta de trabalho do Excel2007 RRS feed

  • Pergunta

  • Boa noite!

    Imaginem que eu tenho um WorkBook com 4 Sheets....Plan1,Plan2,Plan3,Plan4

    Gostaria de usar um código para excluir as Plan2,Plan3,Plan4 deixando só a Plan1..como faço isso?

    Obrigado...a todos

    zinho
    quarta-feira, 30 de março de 2011 00:22

Respostas

  • Sub Deletar()
      Dim a As String
      a = InputBox("Digite as planilhas, separe com virgula")
      
      
      lista = Split(a, ",")
      
      Dim v As Boolean
      v = True
      Dim n As Integer
      n = 0
     Do While v
        On Error GoTo erros
      Sheets(lista(n)).Delete
      n = n + 1
    Loop
      
    erros:
      v = False
      Exit Sub
    End Sub
    
    

    Caio Vitullo
    • Marcado como Resposta zinhovba sexta-feira, 1 de abril de 2011 22:26
    sexta-feira, 1 de abril de 2011 17:16

Todas as Respostas

  • da uma  olhada,

    Application.DisplayAlerts = False
    Dim i As Integer
    i = Sheets.Count - 1
    For n = 0 To i
      If n > 1 Then
       Sheets(n).Delete
      End If
      
    Next
    

    Caio Vitullo
    quarta-feira, 30 de março de 2011 02:23
  • Obrigado!!...Caio..mas, não deu muito certo sempre fica uma planilha sem deletar.

     

    Ex: eu tenho a Plan1, Plan2,Plan3 o código deleta a Plan2 e fica a Plan3 sendo que era para ser deletada.

     

    Gostaria de saber duas coisas se poder me ajudar.

    1º Como eu faria e exclusão Ex: Sheets("Plan1","Plan2","Plan3").delete......... algo assim seria possível dar o nome das Plans, para o código deletar?

     

    2º Como ficaria caso eu queira usar uma inputBox, para excollher a Plan que quero deletar?

     

    Obrigado!!!!!!!!! 


    zinho
    quarta-feira, 30 de março de 2011 23:13
  • voce opde deletar uma a uma:

    sheets("NomePlanilha").Delete

    ou fazer o looping como no caso anterior.

    tira o "-1" da variavel "i", vai resolver o problema.

     

    quanto ao inputBox,

    voce pode usar

    dim nome as String

    nome = InputBox("digite o nome da planilha")

    Sheets(nome).Delete


    Caio Vitullo
    quarta-feira, 30 de março de 2011 23:23
  • Consegui fazer uma coisa legal com a InputBox, mas como seria caso eu optasse por digita dentro da InputBox "Plan1","Plan2","Plan3" e então o código deletar todas que eu digitei?
    zinho
    quinta-feira, 31 de março de 2011 22:23
  • Sub Deletar()
      Dim a As String
      a = InputBox("Digite as planilhas, separe com virgula")
      
      
      lista = Split(a, ",")
      
      Dim v As Boolean
      v = True
      Dim n As Integer
      n = 0
     Do While v
        On Error GoTo erros
      Sheets(lista(n)).Delete
      n = n + 1
    Loop
      
    erros:
      v = False
      Exit Sub
    End Sub
    
    

    Caio Vitullo
    • Marcado como Resposta zinhovba sexta-feira, 1 de abril de 2011 22:26
    sexta-feira, 1 de abril de 2011 17:16
  • Cara valeu!..Muito obrigado!!....legal..kkkkkkkk
    zinho
    sexta-feira, 1 de abril de 2011 22:26