
Obtener tipo de cambio de sunat
Publicado por Daniel (4 intervenciones) el 22/05/2014 00:07:47
ESTIMADOS AMIGOS DE ESTA WEB LES SALUDO MUY CORDIALMENTE DESEANDOLES MUCHOS EXITOS EN SU VIDA.
MI CONSULTA ES LA SIGUIENTE: TENGO UN FORMULARIO CON DOS COMBOS UNO PARA SELECCIONAR EL MES Y EL OTRO PARA SELECCIONAR EL AÑO UN BOTON DE COMANDO Y UN MSFLEXGRID
LO QUE REALIZA ESTE FORMULARIO AL DAR CLICK EN EL BOTON DE COMANDO ES OBTENER EL TIPO DE CAMBIO DE LA SUNAT Y LLENAR LOS DATOS OBTENIDOS EN EL MSFLEXGRID HASTA AHI TODO BIEN . LO MALO ES QUE AL MOMENTO DE OBTENER LOS DATOS LO LLENA ASI COMO SE VE EN LA IMAGEN
01/05/2014
2.807
2.809
02/05/2014
2.803
2.805
y asi sucecivamente con los demas dias

Y LO MAS NORMAL Y CONVENIENTE SERIA QUE LOS LLENE ASI
FECHA VENTA COMPRA
01/05/2014 2.807 2.809
02/05/2014 2.803 2.805
y asi sucecivamente con los demas dias
AHI LES DEJO EL CODIGO QUE ESTOY USANDO PARA VER SI ALGUIEN ME PUEDE AYUDAR EL CUAL ES UN CODIGO NO MIO SINO LO ENCONTRE POR AHI EN UNA APLICACION DE EXCELNEGOCIOS.COM APLICADO EN VBA Y YO LO ESTOY APLICANDO PARA VB6.0
MI CONSULTA ES LA SIGUIENTE: TENGO UN FORMULARIO CON DOS COMBOS UNO PARA SELECCIONAR EL MES Y EL OTRO PARA SELECCIONAR EL AÑO UN BOTON DE COMANDO Y UN MSFLEXGRID
LO QUE REALIZA ESTE FORMULARIO AL DAR CLICK EN EL BOTON DE COMANDO ES OBTENER EL TIPO DE CAMBIO DE LA SUNAT Y LLENAR LOS DATOS OBTENIDOS EN EL MSFLEXGRID HASTA AHI TODO BIEN . LO MALO ES QUE AL MOMENTO DE OBTENER LOS DATOS LO LLENA ASI COMO SE VE EN LA IMAGEN
01/05/2014
2.807
2.809
02/05/2014
2.803
2.805
y asi sucecivamente con los demas dias

Y LO MAS NORMAL Y CONVENIENTE SERIA QUE LOS LLENE ASI
FECHA VENTA COMPRA
01/05/2014 2.807 2.809
02/05/2014 2.803 2.805
y asi sucecivamente con los demas dias
AHI LES DEJO EL CODIGO QUE ESTOY USANDO PARA VER SI ALGUIEN ME PUEDE AYUDAR EL CUAL ES UN CODIGO NO MIO SINO LO ENCONTRE POR AHI EN UNA APLICACION DE EXCELNEGOCIOS.COM APLICADO EN VBA Y YO LO ESTOY APLICANDO PARA VB6.0
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
Private Sub Command1_Click()
If Not IsNumeric(Combo1.Text) Then
MsgBox "Seleccione el Mes"
Exit Sub
End If
If Not IsNumeric(Combo2.Text) Then
MsgBox "Seleccione el Año"
Exit Sub
End If
Call ObtenerTC
End Sub
Sub ObtenerTC()
Dim URL As String
Dim IE As InternetExplorer
Dim HTMLdoc As HTMLDocument
Dim TDelements As IHTMLElementCollection
Dim TDelement As HTMLTableCell
Dim r As Long
Dim Tc_Mes, tc_año As String
Dim intFound As Integer
Tc_Mes = Combo1.Text
tc_año = Combo2.Text
'Tc_Mes = Application.WorksheetFunction.Match(Range("B5").Value, Range("meses"), 0)
'tc_año = Range("c5").Value
Label1.Caption = "Obteniendo Tipo de Cambio desde la Web de SUNAT"
URL = "http://www.sunat.gob.pe/cl-at-ittipcam/tcS01Alias"
Set IE = New InternetExplorer
With IE
.Navigate URL
.Visible = False
'Esperamos que toda la web cargue
While .Busy Or .ReadyState <> READYSTATE_COMPLETE: DoEvents: Wend
Set HTMLdoc = .Document
End With
With HTMLdoc.selectForm
.mes.selectedIndex = Tc_Mes
.anho.Value = tc_año
.submit
End With
grilla
Set HTMLDOC2 = IE.Document
While IE.Busy Or IE.ReadyState <> READYSTATE_COMPLETE: DoEvents: Wend
Set TDelements = HTMLDOC2.getElementsByTagName("TD")
For Each TDelement In TDelements
Select Case TDelement.className
Case "H3"
Text1.Text = DateSerial(tc_año, Tc_Mes, TDelement.innerText)
MSFlexGrid1.AddItem TDelement.innerText & vbTab & DateSerial(tc_año, Tc_Mes, TDelement.innerText)
Case "tne10"
'If TDelement.innerText = "" Then TDelement.innerText = "SIN T.C"
If Text1.Text = "" Then
'Text3.Text = TDelement.innerText
MSFlexGrid1.AddItem vbTab & vbTab & TDelement.innerText
Else
'Text2.Text = TDelement.innerText
MSFlexGrid1.AddItem vbTab & TDelement.innerText
End If
End Select
Next
Label1.Caption = ""
IE.Quit
End Sub
Private Sub Command3_Click()
Form2.Show
End Sub
Private Sub Form_Load()
Combo1.AddItem "01"
Combo1.AddItem "02"
Combo1.AddItem "03"
Combo1.AddItem "04"
Combo1.AddItem "05"
Combo1.AddItem "06"
Combo1.AddItem "07"
Combo1.AddItem "08"
Combo1.AddItem "09"
Combo1.AddItem "10"
Combo1.AddItem "11"
Combo1.AddItem "12"
Combo2.AddItem "2010"
Combo2.AddItem "2011"
Combo2.AddItem "2012"
Combo2.AddItem "2013"
Combo2.AddItem "2014"
MSFlexGrid1.Visible = False
End Sub
Sub grilla()
MSFlexGrid1.Visible = True
MSFlexGrid1.ColWidth(0) = 500
MSFlexGrid1.ColWidth(1) = 1000
MSFlexGrid1.Col = 1
MSFlexGrid1.Row = 0
MSFlexGrid1.Text = "DIA"
MSFlexGrid1.ColWidth(2) = 1800
MSFlexGrid1.Col = 2
MSFlexGrid1.Row = 0
MSFlexGrid1.Text = "COMPRA"
MSFlexGrid1.ColWidth(3) = 1800
MSFlexGrid1.Col = 3
MSFlexGrid1.Row = 0
MSFlexGrid1.Text = "VENTA"
FILA = 1
MSFlexGrid1.Rows = 1
End Sub
Valora esta pregunta


0