Gostaria de apoio para desenvolver uma forma para interação entre dois ListBox e dois ComboBox da seguinte forma.
Aceito outras sugestões.
ListBox1 armazena as datas de todo um ano.
01/01/2009 a 31/12/2009
ComboBox1 armazena as horas do período de 24h.
00:00 a 23:00
ComboBox2 também armazena as horas do período de 24h
00:00 a 23:00
ListBox2 armazena as datas selecionadas na ListBox1 .
Ao selecionar uma data em ListBox1, o usuário deverá selecionar o horário de inicio e final nas ComboBox1 e 2, clicar em gravar e a data e horários transferidos para ListBox2.
Somente a conclusão do período de 24h a data deve ser removida da listBox1.
Exemplo:
O usuario pode selecionar o período de 00:00 a 14:00, podendo selecionar mais tarde selecionar outros horários a partir das 14:00 até concluir o período de 24h. Somente a conclusão do período de 24h a data selecionada na listBox1 seja removida.
A Listbox2 armazena a cada click de gravar a data e horários escolhidos pelo usuário.
Outro detalhe necessário e possibilitar a ListBox2 por meio de um botão resgatar as datas e seus respectivos horários para alterações.
Pergunta
PBJ
Prezados,
Gostaria de apoio para desenvolver uma forma para interação entre dois ListBox e dois ComboBox da seguinte forma.
Aceito outras sugestões.
ListBox1 armazena as datas de todo um ano.
01/01/2009 a 31/12/2009
ComboBox1 armazena as horas do período de 24h.
00:00 a 23:00
ComboBox2 também armazena as horas do período de 24h
00:00 a 23:00
ListBox2 armazena as datas selecionadas na ListBox1 .
Ao selecionar uma data em ListBox1, o usuário deverá selecionar o horário de inicio e final nas ComboBox1 e 2, clicar em gravar e a data e horários transferidos para ListBox2.
Somente a conclusão do período de 24h a data deve ser removida da listBox1.
Exemplo:
O usuario pode selecionar o período de 00:00 a 14:00, podendo selecionar mais tarde selecionar outros horários a partir das 14:00 até concluir o período de 24h. Somente a conclusão do período de 24h a data selecionada na listBox1 seja removida.
A Listbox2 armazena a cada click de gravar a data e horários escolhidos pelo usuário.
Outro detalhe necessário e possibilitar a ListBox2 por meio de um botão resgatar as datas e seus respectivos horários para alterações.
Option Explicit
Private Sub UserForm_Initialize()
Dim lastRow As Long
Dim i As Integer
ListBox1.Clear
'Verifica qual a ultima linha preenchida
lastRow = Plan2.Range("A65000").End(xlUp).Row
'Adiciona datas na ListBox1
For i = 2 To lastRow
Me.ListBox1.AddItem Plan2.Range("A" & i)
Next
ComboBox1.Clear
'Verifica qual a ultima linha preenchida
lastRow = Plan2.Range("B65000").End(xlUp).Row
'Adiciona horas na ComboBox1
For i = 2 To lastRow
Me.ComboBox1.AddItem Format(Plan2.Range("B" & i).Value, "hh:mm")
Next
ComboBox2.Clear
'Verifica qual a ultima linha preenchida
lastRow = Plan2.Range("C65000").End(xlUp).Row
'Adiciona horas na ComboBox2
For i = 2 To lastRow
Me.ComboBox2.AddItem Format(Plan2.Range("C" & i).Value, "hh:mm")
Next
ListBox2.Clear
'Verifica qual a ultima linha preenchida
lastRow = Plan1.Range("A65000").End(xlUp).Row
'Adiciona datas na ListBox2
For i = 2 To lastRow
'Me.ListBox2.RowSource = "A2:C" & i
Me.ListBox2.AddItem Plan1.Range("A" & i)
Next
End Sub
Private Sub CommandButton1_Click()
Dim i As Integer
'Adicionar data da ListBox1 para ListBox2
For i = 0 To ListBox1.ListCount - 1
If ListBox1.Selected(i) = True Then
ListBox2.AddItem ListBox1.List(i)
Plan1.Range("A65000").End(xlUp)(2, 1) = ListBox1.List(i)
End If
Next i
'Remover da ListBox1 a data
For i = ListBox1.ListCount - 1 To 0 Step -1
If ListBox1.Selected(i) = True Then
ListBox1.RemoveItem (i)
End If
Next i
End Sub
abraços,
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.