Extraer los datos de una tabla de la web a una tabla excel

Tengo un código creado que me permite recorrer los datos de mi archivo y cargarlos en la página web pero necesito que los datos de la primera fila "IESS" de la tabla de la web, se exporten a una tabla excel.

Este es mi código

Option Explicit
Public Sub detalles()
Dim r As Long, c As Long
Dim elementsTable As Object, elementsTableDiv As Object
Dim IE As Object, arr(), i As Long, t As Date, j As Long
Dim resultos()
Const MAX_WAIT_SEC As Long = 10
Set IE = CreateObject("internetexplorer.application")
arr = Application.Transpose(ActiveSheet.Range("A2:A4").Value) 'A2:A863
ReDim resultos(1 To UBound(arr), 1 To 5) 'Cedula, Seguro, Tipo de seguro, Mensaje, Registro de Cobertura de Atención de Salud
With IE
.Visible = True

For i = LBound(arr) To UBound(arr)
.Navigate2 "https://coresalud.msp.gob.ec/coresalud/app.php/publico/rpis/afiliacion/consulta"

While .Busy Or .readyState < 4: DoEvents: Wend

With .Document
.querySelector("#identificacion").Value = arr(i)
.querySelector("#fechaconsulta").Value = "29-12-2018"
.querySelector("[type=submit]").Click
End With
t = Timer
Do
DoEvents
If Timer - t > MAX_WAIT_SEC Then Exit Do
Loop While .Document.querySelectorAll("[onclick='window.print()']").Length = 0

Dim primeraFila As Object
Set primeraFila = IE.Document.querySelectorAll(".table tr:first-child td")
If Not primeraFila Is Nothing Then
resultos(i, 1) = arr(i)
For j = 0 To primeraFila.Length - 1
resultos(i, j + 2) = primeraFila.Item(j).innerText
Next
End If
Next
.Quit
End With
End Sub

1 respuesta

Respuesta
1

[Hola

Veo que lo estás intentado de otra forma; la verdad yo que tú seguiría de la forma anterior. Por cierto, veo que quizá no se terminó de entender lo de extraer los datos (lo hice con Msgbox) pero mira el adjunto. OJO, deja que termina de cargar todo (saldrá un Msgbox avisándote) no muestro el IE para ganar algo de tiempo (igual el proceso no es muy rápido).

https://drive.google.com/file/d/1do1SyMhBvt6Sr1wCZmIFH2gSddOCEVwI/view?usp=sharing 

Saludos]

Abraham Valencia

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas