Ver Mensaje Individual
  #3  
Antiguo 07-11-2016
darkamerico darkamerico is offline
Miembro
 
Registrado: dic 2010
Posts: 227
Reputación: 14
darkamerico Va por buen camino
Red face Gracias por la Observacion

Cita:
Empezado por Neftali Ver Mensaje
Lo normal sería, que ya que tienes acceso a la macro, la coloques aquí.
Código:
Option Private Module
Option Explicit

'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
' Autor: Gustavo Adolfo Sebastiani Cépeda
' Email: Gustavo@excelnegocios.com
' Web: www.excelnegocios.com
' Si tomas parte de este código o lo utilizas, por favor no olvides colocar la fuente.
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''

Sub ConsultaDNI()
'Esto es para controlar los errores
On Error Resume Next

'declaramos las variables a utilizar
Dim IE As Object
Dim Nombres, consulta As Object
Dim Rpta As String
Dim Dni As String

'Esto es para evitar que aparescan alerta de mensajes
With Application
.DisplayAlerts = False
End With


'limpiamos el campo donde se obtendrán los nombres antes de empezar
Range("d7:g8").ClearContents

'Celda que contendrá el n° de DNI | le damos formato de 8 digitos
Dni = Format(Range("E5").Text, "00000000")

'evitamos que el dni contenga letras
If Not IsNumeric(Dni) Then
MsgBox "Solo se permite el ingreso de valores numéricos", vbCritical, "ERROR"
Exit Sub
End If


'Este es un mensaje en la barra de estado que indica que se está realizando la consulta.
Application.StatusBar = "Consultando ... "

'creamos el objeto para realizar la conexión a internet
Set IE = CreateObject("InternetExplorer.Application")

'Navegamos en la web
IE.Navigate "http://votoinformado.pe/voto/miembro_mesa.aspx"

'Creamos un bucle para esperar que la web cargue por completo.
Do Until IE.ReadyState = READYSTATE_COMPLETE
        DoEvents
        Loop
        
'Desde Excel enviamos el número de RUC
IE.Document.all.Item("txtCongrDNI").Value = Dni

'Hacemos clic en el boton consultar
Set consulta = IE.Document.getElementbyId("btnCongrDNI")
consulta.Click

'Volvemos a esperar que la web cargue por completo
 Do Until IE.ReadyState = READYSTATE_COMPLETE
        DoEvents
        Loop
        
  
'Esperamos unos segundos para evitar que el servidor nos cancele.
Application.Wait (Now + TimeValue("0:00:03"))

''Extraemos el nombre del DNI consultado
Set Nombres = IE.Document.getElementbyId("lblNombres")
Rpta = Nombres.InnerText
'
'Si el valor consultado es vacío entonces alertamos con este aviso, caso contrario obtenemos el nombre de la persona.
If Rpta = "" Then
Range("D7").Value = "El DNI ingresado no existe ó no se realizó la consulta."
Else
Range("D7").Value = Rpta
End If
      
      

'Para que la consulta en la web no se vea, el valor debe ser Falso
IE.Visible = False
'
''Cerramos la conexión
IE.Quit

'Con esto limpiamos la variable.
Set IE = Nothing

'Regresamos a la normalidad
With Application
.DisplayAlerts = True
End With

'Con este mensaje indicamos que la consulta fue realizada.
Application.StatusBar = "Consulta realizada."

End Sub
Responder Con Cita