Importar datos de una web para nomina
Publicado por LuisNatur (2 intervenciones) el 22/08/2019 21:37:29
Hola, espero que me puedan ayudar con un problema que tengo
Sucede es que estoy haciendo una nomina y necesito actualizar cada mes la información de la web de administración de sistema pensionario y quiero lograr que se calcule los descuentos actualizados
Entonces utilizo la siguiente macro
Entonces mi problema surje en que se ejecuta la parte de formato y copia de celdas, antes que se termine de descargar toda la información y luego se sobrescribe sobre los formatos y copias
Entonces he intentado refrescar, sin embargo no logro mi objetivo
Muchas gracias por su valiosa ayuda
Sucede es que estoy haciendo una nomina y necesito actualizar cada mes la información de la web de administración de sistema pensionario y quiero lograr que se calcule los descuentos actualizados
Entonces utilizo la siguiente macro
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Sub comisiones_afp()
Dim hj As Worksheet
Dim tablas As QueryTable
Dim url As String
url = "http://www.sbs.gob.pe/app/spp/empleadores/comisiones_spp/Paginas/comision_prima.aspx"
Set hj = Worksheets.Add
Set tablas = hj.QueryTables.Add(Connection:="url;" & url, Destination:=Range("a1"))
With tablas
.Name = "Consultas"
.RefreshOnFileOpen = True
.WebFormatting = xlWebFormattingNone
.WebSelectionType = xlSpecifiedTables
.WebTables = 3
.Refresh
End With
'nos aseguramos que la web se ha descargado completamente
'aqui empiezan los formatos y copias
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
Call Workbook_RefreshAll
Range("b2").Value = "Com_Flujo"
Range("c2").Value = "Com_Mixta"
Range("d2").Value = "Com_An_Saldo"
Range("e2").Value = "Prim_Seguro"
Range("f2").Value = "Apo_Obligato"
Range("g2").Value = "Rem_Maxima"
Columns("A:G").Select
Selection.ColumnWidth = 15
Range("a11:a14").Select
Selection.Copy
Range("a4").Select
ActiveSheet.Paste
Range("c11:h14").Select
Selection.Copy
Range("b4").Select
ActiveSheet.Paste
Range("b3:f3").Clear
Range("a8:h14").Clear
Range("h2:h7").Clear
End Sub
Sub Workbook_RefreshAll()
Application.CalculateFullRebuild
ActiveWorkbook.RefreshAll
End Sub
Entonces mi problema surje en que se ejecuta la parte de formato y copia de celdas, antes que se termine de descargar toda la información y luego se sobrescribe sobre los formatos y copias
Entonces he intentado refrescar, sin embargo no logro mi objetivo
Muchas gracias por su valiosa ayuda
Valora esta pregunta


0