View Full Version : while em vba


kovak
08-05-2008, 09:59
pedia para mover o topico para a programação.. enganei.me!!

Boas,

estou com uns problemas no While.
Alguem pode dar uma ajuda
'vai verificar se existe sobras para o comprimento colocado
sql_exp = "select pro_perfil_uni.*, produto.marca_pro from pro_perfil_uni, produto where([pro_perfil_uni.cod_pro]=" & Me.cod_pro & " and [sobra]>=" & Me.txt_comprimento & " and [produto.cod_pro]=" & Me.cod_pro & " and [pro_perfil_uni.cod_perfil]= " & Me.Caixa_de_combinação36 & ");"
Set Registo = CurrentDb.OpenRecordset(sql_exp)
If Registo.RecordCount <> 0 Then
Do While Registo.EOF
Me.lista_marca.SetFocus
Me.lista_marca.AddItem (Registo![marca_pro])
Me.lista_sobra.SetFocus
Me.lista_sobra.AddItem (Registo![sobra])
Me.lista_armazem.SetFocus
Me.lista_armazem.AddItem (Registo![n_armazem])
Me.lista_parteleira.SetFocus
Me.lista_parteleira.AddItem (Registo![n_parteleira])
Registo.MoveNext
Loop
MsgBox "Não Foram encontrados mais registos", vbInformation, "ROLMETAIS - Gestão de Sobras"
Wend

Else
MsgBox "Não existe sobras para satisfazer o pedido", vbInformation, "ROLMETAIS - Gestão de Sobras"
End IfAgradeco a Ajuda

cumps

Armadillo
08-05-2008, 10:04
tens

do while registo.eof

e devia estar

do while not registo.eof

e isto porquê?
porque só vais percorrer o recordset enquanto ele nao chegar ao fim

cumps

kovak
08-05-2008, 10:13
isso já arranjei.
mas o erro que me esta a dar e no "wend"
complie error:
wend without while

cumps

Armadillo
08-05-2008, 10:14
apaga o wend, nao está a fazer nada

kovak
08-05-2008, 10:16
Obrigado pela ajuda
problema resolvido