Bom dia pessoal...estou desenvolvendo uma aplicação em VBA sql em access travei no duplo select.vou postar o código aki ... o que esta acontecendo não esta atualizando
nas outras linhas da listbox... se alguém pude me ajudar desde já agradeço.
o primeiro select puxa de uma tabela que esta exite relação de um para muitos de outras tabelas....em seguida os outros selects pesquisam na outras tabelas e retornan os resultados da consulta dos IDs.
em seguida carrega na minha listbox
ouvir falar do array mas nao consegui adapta vou deixar um modelo que peguei da net se esse for o problema.
[code]
btn_editar.Enabled = True
btn_salvar.Enabled = False
btn_excluir.Enabled = False
'1 ° SELECT
Dim comandoSQL As String
comandoSQL = "select * from tb_cota "
Call Conecta
Set consulta = banco.OpenRecordset(comandoSQL)
'2° SELECT
Dim id As Double
Dim comandoSQL2 As String
id = consulta(1)
comandoSQL2 = "select * from tb_plano where id_plano like '" & id & "' "
Call Conecta
Set consulta2 = banco.OpenRecordset(comandoSQL2)
'3° SELECT
Dim op As String
Dim comandoSQL3 As String
op = consulta(2)
comandoSQL3 = "select * from tb_operacao "
Call Conecta
Set consulta3 = banco.OpenRecordset(comandoSQL3)
'4° SELECT
Dim ta As String
Dim comandoSQL4 As String
ta = consulta(1)
comandoSQL4 = "select * from tb_tarefa "
Call Conecta
Set consulta4 = banco.OpenRecordset(comandoSQL4)
'5° SELECT
Dim eim As String
Dim comandoSQL5 As String
eim = consulta(2)
comandoSQL5 = "select * from tb_eime "
Call Conecta
Set consulta5 = banco.OpenRecordset(comandoSQL5)
'6° SELECT
Dim seto As String
Dim comandoSQL6 As String
seto = consulta(2)
comandoSQL6 = "select * from tb_setor "
Call Conecta
Set consulta6 = banco.OpenRecordset(comandoSQL6)
'On Error Resume Next
linhalistbox = 0
list_cotas.Clear
While Not consulta.EOF
With Me.list_cotas
.AddItem
.List(linhalistbox, 0) = consulta2(1)
.List(linhalistbox, 1) = consulta3(1)
.List(linhalistbox, 2) = consulta4(1)
.List(linhalistbox, 3) = consulta(4)
.List(linhalistbox, 4) = consulta(5)
.List(linhalistbox, 5) = consulta(6)
.List(linhalistbox, 6) = consulta5(1)
.List(linhalistbox, 7) = consulta(0)
.List(linhalistbox, 8) = consulta6(1)
End With
consulta.MoveNext
'consulta2.MoveNext
linhalistbox = linhalistbox + 1
Wend
Call Desconecta
list_cotas.Locked = False
' modelo de array * obs esse modelo puxa os dados da planilha e nao da sql.
Dim arrayItems()
With consulta
ReDim arrayItems(1 To .UsedRange.Rows.Count, 1 To .UsedRange.Columns.Count)
Me.ListBox1.ColumnCount = .UsedRange.Columns.Count
For linha = 1 To .UsedRange.Rows.Count
Me.ListBox1.AddItem
For coluna = 1 To .UsedRange.Columns.Count
arrayItems(linha, coluna) = .Cells(linha, coluna).Value
Next coluna
Next linha
Me.ListBox1.List = arrayItems()
End With[/code]
Postado : 03/10/2018 5:51 am