retornar Nomes sem repetir e em ordem alfabética[Resolvido]
2 participantes
Fórum de Excel JVALQ :: Excel :: VBA
Página 1 de 1
retornar Nomes sem repetir e em ordem alfabética[Resolvido]
Boa tarde
Através de fórmulas eu sei fazer, mas gostaria de saber como fazer utilizando VBA.
Numa ComboBox ou validação de dados, retornar na Plan1 os nomes sem repetição e em ordem alfabética.
Os dados se encontram na coluna A da Plan2, com cabeçalho na Linha A1.
Dê preferencia usar range dinâmico pois na coluna A serão digitados mais nomes.
https://www.sendspace.com/file/ootnyr
Um abraço e boas festas!
Através de fórmulas eu sei fazer, mas gostaria de saber como fazer utilizando VBA.
Numa ComboBox ou validação de dados, retornar na Plan1 os nomes sem repetição e em ordem alfabética.
Os dados se encontram na coluna A da Plan2, com cabeçalho na Linha A1.
Dê preferencia usar range dinâmico pois na coluna A serão digitados mais nomes.
https://www.sendspace.com/file/ootnyr
Um abraço e boas festas!
Última edição por Patropi em Qua Dez 30, 2015 5:19 pm, editado 1 vez(es)
Patropi- Membro
- Mensagens : 7
Data de inscrição : 09/12/2015
Idade : 64
Localização : Campo Mourão, PR
Re: retornar Nomes sem repetir e em ordem alfabética[Resolvido]
Boa tarde,
Veja se este código atende:
Veja se este código atende:
- Código:
Sub RemoverDuplValidacao()
Dim n As Integer
With Sheets("Plan2")
n = .[A1].CurrentRegion.Rows.Count
.Range("A2:A" & n).Copy .[J1]
.Range("J1:J" & n - 1).RemoveDuplicates Columns:=1, Header:=xlNo
n = .[J1].CurrentRegion.Rows.Count
With .Sort
.SortFields.Clear
.SortFields.Add Key:=Range("J1"), Order:=xlAscending
.SetRange Range("J1:J" & n)
.Apply
End With
End With
With Sheets("Plan1").[B7].Validation
.Delete
.Add Type:=xlValidateList, Formula1:="=Plan2!$J$1:$J$" & n
End With
End Sub
Re: retornar Nomes sem repetir e em ordem alfabética[Resolvido]
Boa tarde JVALQ
Funcionou, mas na coluna J não está atualizando os novos nomes que foram digitados na coluna A.
Favor verificar na planilha o que eu fiz de errado.
Parece que o fórum não aceita links para site de Upload, mas vou burlar colocando asterisco entre o endereço e digitando ponto por extenso.
Para baixar o arquivo, copie o endereço, apague os asteriscos e os pontos e digite ponto normal onde tem ponto por extenso.
*w*w*wpontosendspacepontocom/file/on6ij8
Um abraço.
Funcionou, mas na coluna J não está atualizando os novos nomes que foram digitados na coluna A.
Favor verificar na planilha o que eu fiz de errado.
Parece que o fórum não aceita links para site de Upload, mas vou burlar colocando asterisco entre o endereço e digitando ponto por extenso.
Para baixar o arquivo, copie o endereço, apague os asteriscos e os pontos e digite ponto normal onde tem ponto por extenso.
*w*w*wpontosendspacepontocom/file/on6ij8
Um abraço.
Patropi- Membro
- Mensagens : 7
Data de inscrição : 09/12/2015
Idade : 64
Localização : Campo Mourão, PR
Re: retornar Nomes sem repetir e em ordem alfabética[Resolvido]
Boa tarde, Patropi,
Testei e funcionou normalmente com a sua planilha enviada na segunda mensagem.
Excluí e inseri nomes na coluna A e a coluna J, que é a base da validação foi atualizada.
Eu utilizei a versão 2016 do Excel, mas acho que deve funcionar a partir da 2010 ou até da 2007, pois o recurso mais recente que utilizei foi o "Remover Duplicatas".
O link da primeira mensagem funcionou normalmente... Achei estranho não funcionar na segunda.
Abraço
Testei e funcionou normalmente com a sua planilha enviada na segunda mensagem.
Excluí e inseri nomes na coluna A e a coluna J, que é a base da validação foi atualizada.
Eu utilizei a versão 2016 do Excel, mas acho que deve funcionar a partir da 2010 ou até da 2007, pois o recurso mais recente que utilizei foi o "Remover Duplicatas".
O link da primeira mensagem funcionou normalmente... Achei estranho não funcionar na segunda.
Abraço
Re: retornar Nomes sem repetir e em ordem alfabética[Resolvido]
Boa tarde
O meu Excel é o 2013.
Se eu teclo CTRL+F8 e comando a macro, ocorre a atualização da coluna J, mas se eu acrescentar mais dados e for apenas selecionar a validação, ela não mostra os novos nomes inseridos, e na coluna J da outra planilha também não constam.
Pode ver no anexo da minha mensagem anterior, constam nomes digitados na coluna A que não constam na coluna J mesmo depois de eu ter selecionado a validação.
Se ainda não entendeu, pergunte que eu vou tentando explicar.
Obrigado pela paciência.
Um abraço.
O meu Excel é o 2013.
Se eu teclo CTRL+F8 e comando a macro, ocorre a atualização da coluna J, mas se eu acrescentar mais dados e for apenas selecionar a validação, ela não mostra os novos nomes inseridos, e na coluna J da outra planilha também não constam.
Pode ver no anexo da minha mensagem anterior, constam nomes digitados na coluna A que não constam na coluna J mesmo depois de eu ter selecionado a validação.
Se ainda não entendeu, pergunte que eu vou tentando explicar.
Obrigado pela paciência.
Um abraço.
Patropi- Membro
- Mensagens : 7
Data de inscrição : 09/12/2015
Idade : 64
Localização : Campo Mourão, PR
Re: retornar Nomes sem repetir e em ordem alfabética[Resolvido]
Boa tarde, Patropi,
Agora, acho que entendi... Você quer que a atualização seja automática, certo?
Aí tem que inserir o seguinte código no evento Change da "Plan2":
Abraço
Agora, acho que entendi... Você quer que a atualização seja automática, certo?
Aí tem que inserir o seguinte código no evento Change da "Plan2":
- Código:
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
RemoverDuplValidacao
Application.EnableEvents = True
End Sub
Abraço
Re: retornar Nomes sem repetir e em ordem alfabética[Resolvido]
Boa tarde José
Funcionou perfeitamente.
Muito obrigado!
Um abraço e Boas festas!
Funcionou perfeitamente.
Muito obrigado!
Um abraço e Boas festas!
Patropi- Membro
- Mensagens : 7
Data de inscrição : 09/12/2015
Idade : 64
Localização : Campo Mourão, PR
Tópicos semelhantes
» [Resolvido] Limpar o Excel de restos de Códigos VBA
» Calculo do tempo de atendimento de um serviço.[Resolvido]
» [Resolvido] Ocultar Abas em Excel 2003-2007
» [Resolvido] Mostrar Aba com uma mensagem de Alerta quando tiver as macros desactivadas Excel 2007
» Calculo do tempo de atendimento de um serviço.[Resolvido]
» [Resolvido] Ocultar Abas em Excel 2003-2007
» [Resolvido] Mostrar Aba com uma mensagem de Alerta quando tiver as macros desactivadas Excel 2007
Fórum de Excel JVALQ :: Excel :: VBA
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos
|
|