Vídeo recomendado
https://youtu.be/diWPPPhW-9E

Filtro Avançado com VBA

Fórum para dúvidas sobre os fundamentos da linguagem de programação Visual Basic no contexto do VBA
leandropotter2019
Colaborador
Colaborador
Mensagens: 25
Registrado em: Seg Jun 03, 2019 11:22 am

Filtro Avançado com VBA

Mensagem por leandropotter2019 »

Bom dia!

Na planilha em anexo, gostaria de filtrar os valores de data e fornecedor, e quando eu deixar vaziu o textBox ou ComboBox, que filtrasse tudo, porém de deixo vaziu, nao filtra nada. Quando deixo as datas, mas nao coloco o fornecedor (que será um valor numerico) nao filtra nada, somente se preencher tudo no UserForm..

Desde Já muito obrigado
Anexos
teste Filtro.rar
(33.69 KiB) Baixado 320 vezes


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Avatar do usuário
Reinaldo
Jedi
Jedi
Mensagens: 1537
Registrado em: Sex Ago 01, 2014 4:09 pm
Localização: Garça - SP / SCS - SP

Re: Filtro Avançado com VBA

Mensagem por Reinaldo »

Uma possibilidade:

Código: Selecionar todos

Private Sub CommandButton1_Click()
Dim data_ini As String
Dim data_fin As String
Dim Fornec As String

If TextBox1.Text <> "" Then
data_ini = Format(TextBox1, "mm/dd/yyyy")
Else
data_ini = Format("01/01/1900", "mm/dd/yyyy")
End If

If TextBox1.Text <> "" Then
data_fin = Format(TextBox2, "mm/dd/yyyy")
Else
data_fin = Format("12/31/2099", "mm/dd/yyyy")
End If

If ComboBox1.Value = "" Then
    Fornec = ">0"
Else
    Fornec = ComboBox1.Value
End If
ActiveSheet.Range("A4:D5000").AutoFilter Field:=1, Criteria1:= _
        ">=" & data_ini, Operator:=xlAnd, Criteria2:="<=" & data_fin
ActiveSheet.Range("A4:D5000").AutoFilter Field:=3, Criteria1:=Fornec

TextBox4 = Range("G1").Value

Range("H1").Value = Format(data_ini, "dd/mm/yyyy")
Range("I1").Value = Format(data_fin, "dd/mm/yyyy")

End Sub


leandropotter2019
Colaborador
Colaborador
Mensagens: 25
Registrado em: Seg Jun 03, 2019 11:22 am

Re: Filtro Avançado com VBA - RESOLVIDO

Mensagem por leandropotter2019 »

Boa Tarde!

Deu certo, até tinha descoberto um jeito para a variavel de numero, e da data pense em algo parecido, mas nao tinha conseguido.

Muito obrigado


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Responder