Problemas con un Remove error!!!!!!!!!!!!!!!!!!!!!!!!!!

05/07/2006 - 21:32 por Problemas con un Remove error!!!!!!!!!! | Informe spam
Hola !!!
Mi problema es que tengo una consulta la recorro con un for qie tiene un if
dentro si la condicion se cumple lo que quiero es eliminar un dato de la
consulta para que asi me los vaya filtrando. el problema es que cuando hace
la primer comparacion se rompe en el next y me manda este (maldito) error:
Collection was modified; enumeration operation may not execute.

esta es una partecita del codigo
For Each r In tbl1.Rows
f1 = r("fecha")
id1 = r("idmaestro")
tipo1 = r("tipo")

For Each s In tbl2.Rows
f2 = s("fecha")
id2 = s("idmaestro")
tipo2 = s("tipo")

If f1.Ticks < f2.Ticks And f1.Day = f2.Day Then

MsgBox(f1)
MsgBox(f2)
clase.borra1(id1, tipo1, f1)
clase.borra4(id2, tipo2, f2)

tbl1.Rows.Remove(r)
tbl2.Rows.Remove(s)
End If
Next
Next

Creo que me volvere loca porque ya lo intente todo GRACIAS!! si alguien me
ayuda
 

Leer las respuestas

#1 Guillermo guille
06/07/2006 - 01:51 | Informe spam
Los bucles For Each no permiten que se modifique el contenido mientras se
ejecutan, haz un bucle For con índice numérico y procura que sea desde el
final hacia el principio para que no se "pierda" el contador.

For i As Integer = tlb1.Rows.Count -1 To 0 Step -1
r = tlb.Rows(i)


Nos vemos.
Guillermo
Microsoft VB MVP desde 1997
Mentor Asociado de Solid Quality Learning Iberoamericana

Te invito a mi sitio: http://www.elguille.info/
Resuelve tus dudas en: http://foros.elguille.info/

"Problemas con un Remove error!!!!!!!!!!" <Problemas con un Remove
error!!!!!!!!!!@discussions.microsoft.com> escribió en el mensaje
news:
Hola !!!
Mi problema es que tengo una consulta la recorro con un for qie tiene un
if
dentro si la condicion se cumple lo que quiero es eliminar un dato de la
consulta para que asi me los vaya filtrando. el problema es que cuando
hace
la primer comparacion se rompe en el next y me manda este (maldito) error:
Collection was modified; enumeration operation may not execute.

esta es una partecita del codigo
For Each r In tbl1.Rows
f1 = r("fecha")
id1 = r("idmaestro")
tipo1 = r("tipo")

For Each s In tbl2.Rows
f2 = s("fecha")
id2 = s("idmaestro")
tipo2 = s("tipo")

If f1.Ticks < f2.Ticks And f1.Day = f2.Day Then

MsgBox(f1)
MsgBox(f2)
clase.borra1(id1, tipo1, f1)
clase.borra4(id2, tipo2, f2)

tbl1.Rows.Remove(r)
tbl2.Rows.Remove(s)
End If
Next
Next

Creo que me volvere loca porque ya lo intente todo GRACIAS!! si alguien me
ayuda

Preguntas similares