Nesse exemplo temos um arquivo com dez planilhas.
Salvaremos o arquivo como: Ordem_Alfabetica lembrando de salvar como Pasta de Trabalho Habilitada para Macro do Excel.
Precisamos acessar o Visual Basic Editor, para digitarmos o código da macro, que irá relacionar as planilhas. Para tanto podemos pressionar as teclas Alt + F11, ou usar o comando
A janela do VBA será aberta.
Vamos inserir um módulo e nomeá-lo.
Digitaremos o seguinte código:
Sub alfabetica()
‘Cria Variáveis
Dim Primeira As Integer
Dim Ultima As Integer
Dim Classificar As Boolean
Dim Contador As Integer
Dim Contador2 As Integer
‘Atribui valor a variável
Classificar = False
‘irá colocar apenas as planilhas selecionadas
‘caso só uma planilha estiver selecionada
If ActiveWindow.SelectedSheets.Count = 1 Then
Primeira = 1
‘conta as planilhas
Ultima = Worksheets.Count
Else
With ActiveWindow.SelectedSheets
For Contador = 2 To .Count
If .Item(Contador – 1).Index <> .Item(Contador).Index – 1 Then
MsgBox “Só se podem ordenar planilhas adjacentes”
Exit Sub
End If
Next Contador
Primeira = .Item(1).Index
Ultima = .Item(.Count).Index
End With
End If
For Contador2 = Primeira To Ultima
For Contador = Contador2 To Ultima
If Classificar = True Then
‘Verifica o primeiro caracter de cada planilha e ordena
If UCase(Worksheets(Contador).Name) > UCase(Worksheets(Contador2).Name) Then
Worksheets(Contador).Move Before:=Worksheets(Contador2)
End If
Else
If UCase(Worksheets(Contador).Name) < UCase(Worksheets(Contador2).Name) Then
Worksheets(Contador).Move Before:=Worksheets(Contador2)
End If
End If
Next Contador
Next Contador2
End Sub
Feche o Visual Basic Editor.
Na planilha vamos inserir um botão
Clique sobre o botão e depois clique na planilha.
Ao clica na planilha uma janela para atribuição de macro surgirá. Escolha a macrorelacionarplanilhas.
Salve o arquivo.
Clique no botão para fazer o teste.
0 comentários:
Postar um comentário