Visual Basic - AYUDA URGENTE POR FAVOR

Life is soft - evento anual de software empresarial
 
Vista:

AYUDA URGENTE POR FAVOR

Publicado por cientocien (67 intervenciones) el 13/01/2003 10:29:13
En mi ordenador las consultas no tardan mucho en ejecutarse pero cuando las llevo a otra maquina(Pentium III) van muy lentas. Por ejemplo una tarda exactamente en cargar 2,5 minutos 80 registros en un listview. A que puede deberse esto?. Esta es la funcion que decia antes que tardaba 2,5 minutos. Que puedo hacer para que no tarde tanto, porque voy a tener tablas con mas de 20 mil registros.

Gracias

Sub ListaAgente(lista As ListView, tabla As String, consulta As String, parametros As Integer)

On Error GoTo ERR_ListaCodigos:

Dim RS As Recordset
Dim cont As Integer
Dim qd As QueryDef
Dim ITEM As ListItem
Dim i As Integer
Set qd = odb.QueryDefs(consulta)
With lista
.ListItems.Clear
End With

cont = 0

Set RS = qd.OpenRecordset()

With RS

If (.RecordCount < 1) Then

Else
frmbarraProgreso.Show
frmbarraProgreso.brBarra.MIN = 0
.MoveLast
frmbarraProgreso.brBarra.MAX = .RecordCount
.MoveFirst
While (Not RS.EOF)
Set ITEM = lista.ListItems.Add(, , .Fields(0))
For i = 1 To parametros - 1
If (i = 7) Then
If (.Fields(i) = 1) Then
ITEM.SubItems(i) = "" & "SI"
Else
ITEM.SubItems(i) = "" & "NO"
End If
Else
ITEM.SubItems(i) = "" & .Fields(i)
End If
Next i

cont = cont + 1
frmbarraProgreso.brBarra.Value = cont
.MoveNext
Wend
End If
End With
Unload frmbarraProgreso
Exit Sub
ERR_ListaCodigos:
MsgBox "ERROR #" & Err.Number & ": " & Err.Description, vbExclamation, "ERROR"
End Sub


Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder