Vídeo recomendado
https://youtu.be/diWPPPhW-9E
https://youtu.be/diWPPPhW-9E
Aumentar Linhas Pesquisa Combobox (RESOLVIDO)
-
- Colaborador
- Mensagens: 62
- Registrado em: Sáb Fev 27, 2016 7:31 pm
Aumentar Linhas Pesquisa Combobox (RESOLVIDO)
A minha Combo está procurando dados num limite de (acho) 1000 linhas. Como faço para aumentar isto, para que procure até o último lancamento?
Sub PreencherComboBox()
Dim n As Long, texto As Variant
Dim i As Integer
Me.cbofornec.Clear
For n = 1 To ListView1.ListItems.Count
If Me.ListView1.ListItems(n).ListSubItems(2) = "" Then Exit For
If InStr(texto, Me.ListView1.ListItems(n).ListSubItems(2)) = 0 Then
texto = texto & "|" & Me.ListView1.ListItems(n).ListSubItems(2) '& "|"
End If
Next
texto = Split(texto, "|")
For i = 1 To UBound(texto)
cbofornec.AddItem texto(i)
Next
Call OrdenarComboBox
End Sub
Sub PreencherComboBox()
Dim n As Long, texto As Variant
Dim i As Integer
Me.cbofornec.Clear
For n = 1 To ListView1.ListItems.Count
If Me.ListView1.ListItems(n).ListSubItems(2) = "" Then Exit For
If InStr(texto, Me.ListView1.ListItems(n).ListSubItems(2)) = 0 Then
texto = texto & "|" & Me.ListView1.ListItems(n).ListSubItems(2) '& "|"
End If
Next
texto = Split(texto, "|")
For i = 1 To UBound(texto)
cbofornec.AddItem texto(i)
Next
Call OrdenarComboBox
End Sub
Editado pela última vez por NERI INACIO em Qui Mar 31, 2016 12:55 pm, em um total de 1 vez.
Re: Aumentar Linhas Pesquisa Combobox
NERI INACIO,
Somente com este trecho de código, percebe-se que não há limite de registros á serem procurados, já que o limite é a quantidade de itens que o ListView possui :
Sem contar que há um critério :
Se possível, poste seu modelo para analisarmos e assim, podermos sanar suas dúvidas.
Abs
Somente com este trecho de código, percebe-se que não há limite de registros á serem procurados, já que o limite é a quantidade de itens que o ListView possui :
Código: Selecionar todos
For n = 1 To ListView1.ListItems.Count
Código: Selecionar todos
If InStr(texto, Me.ListView1.ListItems(n).ListSubItems(2)) = 0 Then
Abs
-
- Colaborador
- Mensagens: 62
- Registrado em: Sáb Fev 27, 2016 7:31 pm
Re: Aumentar Linhas Pesquisa Combobox
Amigo
a minha planilha possui muitos dados e forms.
Pensei em usar o código:
Private Sub cbofornec_enter()
Sheets("ContasPagar").Select
Range("c1").Select
Selection.End(xlDown).Select
Lin = ActiveCell.Row
cbofornec.RowSource = "ContasPagar!c1:c" & Lin
End Sub
Porém preciso de um comando para eliminar os registros duplos.
Pode me ajudar?
a minha planilha possui muitos dados e forms.
Pensei em usar o código:
Private Sub cbofornec_enter()
Sheets("ContasPagar").Select
Range("c1").Select
Selection.End(xlDown).Select
Lin = ActiveCell.Row
cbofornec.RowSource = "ContasPagar!c1:c" & Lin
End Sub
Porém preciso de um comando para eliminar os registros duplos.
Pode me ajudar?
Re: Aumentar Linhas Pesquisa Combobox
NERI INACIO,
Ok, sem problemas!
Para remover os itens duplicados, recomendo copiar os dados da planilha de origem para uma temporária, remover os duplicados e só então, adicioná-los ao ComboBox, sem utilizar a propriedade RowSource, para evitar a perda de dados na planilha de origem :
Adicione isso ao código de algum controle ou crie uma nova rotina.
Seria basicamente isso.
Ok, sem problemas!
Para remover os itens duplicados, recomendo copiar os dados da planilha de origem para uma temporária, remover os duplicados e só então, adicioná-los ao ComboBox, sem utilizar a propriedade RowSource, para evitar a perda de dados na planilha de origem :
Código: Selecionar todos
ThisWorkbook.Sheets(planilha_origem).Activate
Range("A1").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Sheets.Add After:=Sheets(Sheets.Count)
Range("A1").Select
ActiveSheet.Paste
Application.CutCopyMode = False
Columns("A:A").Select
Selection.RemoveDuplicates Columns:=1, Header:=xlNo
Range("A1").Select
Range(Selection, Selection.End(xlDown)).Select
cbofornec.Clear
For ttRegs = 1 To ActiveSheet.UsedRange.Rows.Count
cbofornec.Add Cells(ttRegs, "A")
Next
Application.DisplayAlerts = False
ThisWorkbook.Sheets(Sheets.Count).Delete
ThisWorkbook.Sheets(planilha_origem).Activate
Seria basicamente isso.
-
- Colaborador
- Mensagens: 62
- Registrado em: Sáb Fev 27, 2016 7:31 pm
Re: Aumentar Linhas Pesquisa Combobox
Amigo
Achei o erro, que era simples e "besta": tinha uma linha sem informação (vazia), aí a pesquisa parou ali. Era pela linha 600. Sendo assim todos os outros dados não apareceram.
Obrigado pela ajuda.
Achei o erro, que era simples e "besta": tinha uma linha sem informação (vazia), aí a pesquisa parou ali. Era pela linha 600. Sendo assim todos os outros dados não apareceram.
Obrigado pela ajuda.
Re: Aumentar Linhas Pesquisa Combobox (RESOLVIDO)
NERI INACIO,
Opa que bom que encontrou o problema meu amigo.
Confesso que nem me passou pela cabeça tal inconveniente.
Abs
Opa que bom que encontrou o problema meu amigo.
Confesso que nem me passou pela cabeça tal inconveniente.
Abs