Colocar progreso de macro en barra de estado

Tengo un código, deseo que me de el progreso en la barra de estado, todo funciona bien, pero no logro que calcule el numero de celdas recorridas, es decir siempre muestra el avance como: 0 de 3 y 0% de progreso, la variable que deseo definir es "c", que a mi parecer es la que no esta calculando, les dejo mi código y agradezco su ayuda.

Option Explicit
Sub ExtraerDatos()
Dim IE As Object
Dim UltimaFila As Long, c As Long
Dim elementsTable As Object, elementsTableDiv As Object
Dim Celda As Range
Dim colFiles As New Collection
Application.ScreenUpdating = False
Application.Cursor = xlWait
Set IE = CreateObject("InternetExplorer.Application")
Let UltimaFila = Cells(Rows.Count, 1).End(xlUp).Row
IE.navigate "https://coresalud.msp.gob.ec/coresalud/app.php/publico/rpis/afiliacion/consulta"
Do Until IE.readyState = 4
    DoEvents
Loop
For Each Celda In Range("A1:A" & UltimaFila)
 Application.StatusBar = " Progreso " & c & " de " & UltimaFila & ".... " & Format(c / UltimaFila, "0%") & " completo"
         Application.Wait (Now + TimeValue("0:00:01"))
    With IE
        .Document.getElementById("identificacion").Value = Celda.Value
        .Document.getElementById("fechaconsulta").Value = "04-01-2019"
        .Document.getElementsByTagName("button")(1).Click
    End With
    Do While elementsTableDiv Is Nothing
        Set elementsTableDiv = IE.Document.getElementsByClassName("table-responsive")
        DoEvents
    Loop
    Do While elementsTableDiv(0) Is Nothing
        DoEvents
    Loop
    Set elementsTable = elementsTableDiv(0).getElementsByTagName("TABLE")
    Range("B" & Celda.Row).Value = elementsTable(0).Rows(1).Cells(0).innerText
    Range("C" & Celda.Row).Value = elementsTable(0).Rows(1).Cells(1).innerText
    Range("D" & Celda.Row).Value = elementsTable(0).Rows(1).Cells(2).innerText
    Range("E" & Celda.Row).Value = elementsTable(0).Rows(1).Cells(3).innerText
    Set elementsTableDiv = Nothing
    Set elementsTable = Nothing
    Next Celda
Application.StatusBar = False
IE.Quit
Set IE = Nothing
Application.ScreenUpdating = True
Application.Cursor = xlDefault
MsgBox "Proceso finalizado"
End Sub

1 Respuesta

Respuesta
1

[Hola

¿Y en dónde le das valor a C?

Abraham Valencia

@Abraham muchas gracias por la pregunta, y a la vez la respuesta nunca di el valor a "c", en este código me ayudaste anteriormente quería ver el progreso del mismo, lo soluciones dando valor de c =1, mil gracias.

Pues de nada, hasta la próxima.

Abraham Valencia

La pregunta no admite más respuestas

Más respuestas relacionadas