que - Haga una solicitud de obtención de HTTP de Excel a través de un Proxy con las credenciales predeterminadas
officeclient.microsoft.com proxy (1)
No pude encontrar nada mejor en este momento, pero esta es una solución rápida y "sucia", que funciona con componentes "Estándar".
Dado que el proxy está configurado para Internet Explorer, para cada usuario
1) Agregue un control Webbrowser
2) Establezca las propiedades para el Control
Nombre: navegador, opcional cambiar el tamaño que no será visible o tan
3) Escriba este código en la hoja de trabajo, con el control del navegador
Private Sub browser_DocumentComplete(ByVal pDisp As Object, URL As Variant)
Debug.Print browser.Document.body.innerHTML
End Sub
Private Sub Worksheet_Activate()
browser.Navigate "stackoverflow.com"
End Sub
'' Tested on Win7 with Excel 2010
el Código reacciona a veces de forma un tanto falsa (errores de JavaScript, ...), pero usa el Proxy y el Usuario conectado.
Actualización 1:
para otros Escenarios, donde Internet Explorer no tiene un conjunto de proxy, podría estar inactivo (solución muy sucia) al configurar el proxy con las claves de registro:
HKCU/Software/Microsoft/Windows/CurrentVersion/Internet Settings/ProxyEnable HKCU/Software/Microsoft/Windows/CurrentVersion/Internet Settings/ProxyServer
Aunque para que esto funcione, la aplicación tendría que finalizar todos los IE en ejecución y luego Iniciar el navegador.
Descargo de responsabilidad: No intenté esto (es solo una idea que tuve), ya que para mis >> necesidades la solución anterior es suficiente, y me parece muy >> radical / peligroso y podría / debería haber una mejor manera.
Quiero obtener datos de un sitio web (algún tipo de webrequest), de un Excel, el único problema es que estoy sentado detrás de un proxy y no quiero codificar el nombre de usuario y la contraseña.
¿Hay alguna forma de obtener el Proxy predeterminado y establecer las credenciales del Usuario actual, sin una codificación dura?
Con otras palabras: me gustaría autenticar contra el proxy, con el usuario que está actualmente conectado en la máquina de Windows.
Este es el código relevante:
Set objHTTP = CreateObject("MSXML2.ServerXMLHTTP.6.0")
URL = "http://stackoverflow.com/"
objHTTP.Open "GET", URL, False
''If possible i would like to get the default proxysettings
objHTTP.setProxy 2, "proxy:8282"
''I dont wont to set this line
objHTTP.setProxyCredentials "username", "password"
objHTTP.setRequestHeader "User-Agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)"
objHTTP.send ("")
Busqué en Google, pero pude encontrar un no claro o una solución alternativa.
Debería ejecutarse en el entorno de Windows. Cualquier Ayuda y / o Sugerencias sería apreciada.