Autosort microsoft excel planilha

0

Posso configurar (possivelmente com scripts) o Excel para recorrer automaticamente a uma tabela toda vez que uma entrada for atualizada?

    
por Louis Rhys 26.10.2010 / 09:12

1 resposta

0

Um rápido google me deu isso:

link

Private Sub Worksheet_Change(ByVal Target As Range)
    If Not (Application.Intersect(Worksheets(1).Range("E9:F32"), Target) Is Nothing) Then
        DoSort
    End If
End Sub

Private Sub DoSort()
    Worksheets(3).Range("E3:M7").Sort Key1:=Worksheets(3).Range("M3"), Order1:=xlDescending, _
        Key2:=Worksheets(3).Range("L3"), Order2:=xlDescending, Header:=xlYes
    Worksheets(3).Range("E10:M14").Sort Key1:=Worksheets(3).Range("M10"), Order1:=xlDescending, _
        Key2:=Worksheets(3).Range("L10"), Order2:=xlDescending, Header:=xlYes
    Worksheets(3).Range("E17:M21").Sort Key1:=Worksheets(3).Range("M17"), Order1:=xlDescending, _
        Key2:=Worksheets(3).Range("L17"), Order2:=xlDescending, Header:=xlYes
    Worksheets(3).Range("E24:M28").Sort Key1:=Worksheets(3).Range("M24"), Order1:=xlDescending, _
        Key2:=Worksheets(3).Range("L24"), Order2:=xlDescending, Header:=xlYes
End Sub

Eu não tenho muito conhecimento de VBA, mas vou tentar explicar como personalizar isso, se eu falhar com isso, me avise. ;)

Com o primeiro sub você define quando a função é disparada. A linha acima diz iniciar o DoSort quando qualquer coisa na planilha 1 nas células E9 a F32 é alterada.

O DoSort classifica alguns intervalos e também pode ser adaptado com seus próprios intervalos de dados. Basta excluir as linhas desnecessárias e alterar os números e os intervalos de dados da planilha.

    
por 26.10.2010 / 09:17