- Este tópico contém 3 respostas, 2 utilizadores e foi actualizado pela última vez há 12 anos por Anónimo.
-
AutorArtigos
-
-
13 de Outubro de 2012 às 17:17 #1199AnónimoInactivo
boa tarde amigos do fórum!
preciso novamente do auxílio de vocês!
fiz um form vba que lista todos os arquivos de um determinado diretório, podendo salvar os dados listados em arquivo txt e também executar o arquivo com duplo click no listbox.
queria implementar o form para filtrar os dados do listbox em tempo de digitação!
ou seja, ao digitar uma palavra no textbox, o listbox fosse filtrando automaticamente de acordo com o texto digitado.isto é possível?
obrigado…
ps: segue em anexo o arquivo para melhor entendimento
-
14 de Outubro de 2012 às 14:44 #2010jorgerodAdministrador
mcjota,
tenta adaptar. depois, diz qq coisa, ok?
fica bem.
-
14 de Outubro de 2012 às 21:42 #2014AnónimoInactivo
caro jorge…
obrigado pela resposta direta e eficaz….
tentei adaptar o código de acordo com minha pasta más deu erro “permissão negada”!
estou usando o seguinte código em um commandbutton:
private sub commandbutton4_click()
dim rng as range
dim strproc as stringon error resume next
thisworkbook.worksheets("plan2").activate
range("a:a").select
selection.clearcontents
with sheets("plan1").activate
range("a:a").select
strproc = textbox3.value
selection.autofilter
selection.autofilter field:=1, criteria1:="*" & strproc & "*", operator:=xland
selection.copy
activesheet.paste destination:=worksheets("plan2").range("a:a")
range("a2").select
selection.autofilter
end withwith sheets("plan2")
set rng = .range(.cells(1, 1), .cells(rows.count, 1).end(xlup))
end with
sheets("plan2").activate
ultimalinha = range("a2").end(xldown).row
range("a2").select
if ultimalinha = "1048576" and activecell = "" then
label1.caption = "não foi encontrado nenhum arquivo!"
listbox1.rowsource = "plan2!a2:a2"
else
if ultimalinha = "1048576" then
label1.caption = "foi encontrado 1 arquivo!"
listbox1.rowsource = "plan2!a2:a2"
else
label1.caption = "foram encontrados " & ultimalinha - 1 & " arquivos!"
listbox1.rowsource = "plan2!a2:a" & ultimalinha
end if
end if
thisworkbook.worksheets("plan1").activate
range("a1").select
end subtentei alterar o “commandbutton4_click” para “textbox3_change”, más fica inviável quando a lista contém mais de 1000 linhas.
abraço….
-
14 de Outubro de 2012 às 23:34 #1200jorgerodAdministrador
mcjota,
se quiseres, manda-me a tua planilha via e-mail, para eu ver o que poderá ser possível fazer: jorge.rodrigues@exceler.org.
fica bem.
-
-
AutorArtigos
- Tem de iniciar sessão para responder a este tópico.