Notifications
Clear all

Pesquisar e retornar células vazias

6 Posts
3 Usuários
0 Reactions
1,172 Visualizações
(@rui-maciel)
Posts: 190
Reputable Member
Topic starter
 

Boa tarde
Pretendia num formulário com uma combobox´s e uma listview que na combobox seleciono determinada sheet e na listview apareceria somente as células da segunda coluna que estão vazias retornando o conteúdo da primeira coluna, ou seja, na primeira coluna tenho nomes de pessoas e na listview somente retornaria os nomes que tivessem a segunda coluna vazia.
Grato desde já pela ajuda que me possam dar, abraço,
RM

 
Postado : 28/01/2018 9:03 am
Wagner Morel
(@wagner-morel-vidal-nobre)
Posts: 0
Illustrious Member
 

Rui Maciel,

Bom dia!

Anexe, por gentileza, seu arquivo compactado com .ZIP. Do contrário serão feitas apenas suposições que poderão não funcionar no seu arquivo real.

Desenvolvo pequenas soluções em VBA Excel a valores que variam entre R$ 50,00 a R$ 200,00. Se te interessar, entre no meu instagran (vba_excel_desenvolvimento)

Atenciosamente
Wagner Morel

 
Postado : 28/01/2018 9:58 am
(@klarc28)
Posts: 971
Prominent Member
 

Código para preencher a combobox

Private Sub UserForm_Initialize()
'COLOCAR OS ANOS NA COMBOBOX
Dim I As Integer
For I = 2015 To 2023
Me.ComboBox1.AddItem (I)
Next I
End Sub

 
Postado : 28/01/2018 10:32 am
(@rui-maciel)
Posts: 190
Reputable Member
Topic starter
 

Boa tarde
Segue em anexo exemplo, isto é, pretendia que no userform4 quando selecionar o ano da respetiva sheet na combobox1 só apareçam os nomes daqueles que ainda não liquidaram, só que não estou a conseguir implementar. Pode-me ajudar, desde já agradecido. O utilizador para voltar ao excel é "ADM" e a senha "1234".
Cpmt.,
RM

 
Postado : 28/01/2018 12:39 pm
(@klarc28)
Posts: 971
Prominent Member
 
Private Sub ComboBox1_Change()
If Me.ComboBox1.ListIndex >= 0 Then
ListBox1.ColumnCount = 8
'ListBox1.RowSource = ComboBox1.Value & "!A2:H" & Sheets(ComboBox1.Value).Cells(Rows.Count, 1).End(xlUp).Row
Dim REGISTROS(1 To 1000, 1 To 8) As String
Dim LINHA As Long
Dim LINHA2 As Long
Dim R As Integer
LINHA2 = 1
For LINHA = 2 To Sheets(ComboBox1.Value).Cells(Rows.Count, 1).End(xlUp).Row

If UCase(CStr(Sheets(ComboBox1.Value).Cells(LINHA, "E").Value)) <> "SIM" Then

For R = 1 To 8

REGISTROS(LINHA2, R) = CStr(Sheets(ComboBox1.Value).Cells(LINHA, R).Value)

Next R
LINHA2 = LINHA2 + 1
End If

Next LINHA
ListBox1.List = REGISTROS
'Call pesquisanome211
End If
'TextBox1.SetFocus
End Sub
 
Postado : 28/01/2018 4:38 pm
(@rui-maciel)
Posts: 190
Reputable Member
Topic starter
 

Obrigado Klarc28 funcionou perfeito, já acrescentei botão para imprimir e ficou um espetaculo.
Abraço,
RM

 
Postado : 28/01/2018 5:39 pm