Página 1 de 1
Excel VBA - Combobox em ordem alfabética
Enviado: 05 Set 2019 às 08:15
por Leonardo7
Bom dia amigos,
Preciso do apoio de vcs para editar o código abaixo da minha Combobox. O que eu necessito é que o código coloque os valores em ordem alfabética.
Código: Selecionar todosPrivate Sub UserForm_Initialize()
Dim OCOLLECTION As New Collection
Dim VARVALUE As Variant
Dim I As Long
On Error Resume Next
For Each VARVALUE In wshBD.Range("B2:B" & wshBD.Range("B65536").End(xlUp).Row)
OCOLLECTION.Add VARVALUE, VARVALUE
Next
For I = 1 To OCOLLECTION.Count
ComboBoxPesq.AddItem OCOLLECTION.Item(I)
Next I
End Sub
Excel VBA - Combobox em ordem alfabética
Enviado: 05 Set 2019 às 09:02
por Jimmy
Olá Leonardo,
Poderia anexar a planilha, ou um modelo dela, para que trabalhemos em cima dela?
Jimmy San Juan
Re: Excel VBA - Combobox em ordem alfabética
Enviado: 05 Set 2019 às 09:30
por Leonardo7
Jimmy escreveu:Olá Leonardo,
Poderia anexar a planilha, ou um modelo dela, para que trabalhemos em cima dela?
Jimmy San Juan
Bom dia Jimmy,
Segue planilha em anexo. Muito obrigado pelo apoio.
Re: Excel VBA - Combobox em ordem alfabética
Enviado: 05 Set 2019 às 10:16
por babdallas
Veja se ajuda. Fiz isso antes de voc~e enviar o arquivo.
Código: Selecionar todosPrivate Sub UserForm_Initialize()
Dim coll As Object
Dim vrtArr As Variant
Dim VARVALUE As Variant
Dim I As Long
Set coll = CreateObject("System.Collections.ArrayList")
On Error Resume Next
For Each VARVALUE In wshBD.Range("B2:B" & wshBD.Range("B65536").End(xlUp).Row)
coll.Insert VARVALUE, VARVALUE
Next
coll.Sort
vrtArr = coll.ToArray
ComboBoxPesq.List vrtArr
Set coll = Nothing
End Sub
Re: Excel VBA - Combobox em ordem alfabética
Enviado: 05 Set 2019 às 10:36
por babdallas
Ajustei o código.
Código: Selecionar todosPrivate Sub UserForm_Initialize()
Dim coll As Object
Dim vrtArr As Variant
Dim VARVALUE As Variant
Dim I As Long
Set coll = CreateObject("System.Collections.ArrayList")
On Error Resume Next
For Each VARVALUE In wshBD.Range("B2:B" & wshBD.Range("B65536").End(xlUp).Row)
If Not coll.contains(VARVALUE.Value2) Then
coll.Add VARVALUE.Value2
coll.Insert VARVALUE.Value2, VARVALUE.Value2
End If
Next
coll.Sort
vrtArr = coll.ToArray
frmPesquisa.ComboBoxPesq.List = vrtArr
Set coll = Nothing
End Sub
Re: Excel VBA - Combobox em ordem alfabética
Enviado: 05 Set 2019 às 12:29
por Leonardo7
babdallas escreveu:Ajustei o código.
Código: Selecionar todosPrivate Sub UserForm_Initialize()
Dim coll As Object
Dim vrtArr As Variant
Dim VARVALUE As Variant
Dim I As Long
Set coll = CreateObject("System.Collections.ArrayList")
On Error Resume Next
For Each VARVALUE In wshBD.Range("B2:B" & wshBD.Range("B65536").End(xlUp).Row)
If Not coll.contains(VARVALUE.Value2) Then
coll.Add VARVALUE.Value2
coll.Insert VARVALUE.Value2, VARVALUE.Value2
End If
Next
coll.Sort
vrtArr = coll.ToArray
frmPesquisa.ComboBoxPesq.List = vrtArr
Set coll = Nothing
End Sub
Muito obrigado babdallas! Funcionou perfeitamente.