Ir para conteúdo
Fórum Script Brasil

thairo

Membros
  • Total de itens

    1
  • Registro em

  • Última visita

Sobre thairo

thairo's Achievements

0

Reputação

  1. Boa tarde galera, Tenho o seguinte código abaixo. Ele cria uma nova planilha conforme o modelo padrão (perfeito)! Porém quando eu executo o "botão" de pesquisa ele pega do modelo padrão. Gostaria de ajuda no comentário ' EXECUTA O FILTRO, imagino que seja ali para eu executar o filtro na nova planilha criada e não no modelo padrão! Sub lsFiltroAutomatico() ' declara as variáveis Dim ultimaPlanilha As Integer Dim planilhaVerificada As Integer Dim nomePlanilha As String Dim padraoNomePlanilha As String Dim posicaoInicio As Integer ' copia o modelo da planilha Sheets("VT").Copy After:=Sheets(ThisWorkbook.Worksheets.Count) ' define o nome da planilha nomePlanilha = "VT" ' define o padrão de texto referente ao nome da planilha padraoNomePlanilha = nomePlanilha & " (*)" ' define a última planilha com "nomePlanilha" encontrada, o 0 (zero) indica que ainda não foi encontrada ultimaPlanilha = 0 ' desativa atualização de tela Application.ScreenUpdating = False ' percorre todas as planilhas existentes For i = 1 To Sheets.Count Step 1 ' verifica os nomes das planilhas If Sheets(i).Name = nomePlanilha And ultimaPlanilha = 0 Then ' define que foi encontrada uma planilha com o nomePlanilha ultimaPlanilha = 1 ElseIf Sheets(i).Name Like padraoNomePlanilha Then ' define posição de início, considerando o total de caracteres do "nomePlanilha", um espaço, um parenteses e a posição do primeiro número, por isso do 3 posicaoInicio = Len(nomePlanilha) + 3 ' pega o número que está entre os parênteses planilhaVerificada = CInt(Mid(Sheets(i).Name, posicaoInicio, Len(Sheets(i).Name) - posicaoInicio)) ' verifica o número da planilha atual com o número da última encontrada If planilhaVerificada > ultimaPlanilha Then ' define o número da última planilha encontrada ultimaPlanilha = planilhaVerificada End If End If Next i ' seleciona a planiha atual Sheets(Sheets.Count).Select ' verifica qual o nome deverá ser considerado If ultimaPlanilha = 0 Then Sheets(Sheets.Count).Name = nomePlanilha Else Sheets(Sheets.Count).Name = nomePlanilha & " (" & CStr(ultimaPlanilha + 1) & ")" End If ' EXECUTA O FILTRO Sheets("Clientes").Columns("A:AH").AdvancedFilter Action:=xlFilterCopy, _ CriteriaRange:=Range("VT!Criteria"), CopyToRange:=Range( _ "VT!Extract"), Unique:=False Range("Database").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=Range("Criteria") ' ativa atualização de tela Application.ScreenUpdating = True End Sub
×
×
  • Criar Novo...