¿Cómo obtener la hora de una URL con VBA?
Si copio del navegador una URL en un cuadro de texto y hago clic en un botón me muestre en otro cuadro de texto la fecha y hora del servidor". Por ejemplo,
https://www.todoexpertos.com/me
Y hago clic en un botón, me indique en otro cuadro de texto algo como
5/02/2023 1:53:42 p. m.
3 respuestas

Martha, después de los insultos a que ha sido objeto, le dejo una función de Christos Samaras
Pego la url en el campo y hago clic sobre el botón Url. Obtngo en el campo Fecha la fecha y hora del servidor.
Código del botón Url
Private Sub btnURL_Click() If IsNull(Me.ctlURL) Then MsgBox "Se requiere la url", vbInformation, "Error.." Else Me.ctlFechaURL = InternetTime(Me.ctlURL, 1) End If End Sub
El primer parámetro es la url y el segundo es la diferencia de tiempo está entre -12 y 14.
Código de la función InternetTime
Function InternetTime(url As String, Optional GMTDifference As Integer) As Date '----------------------------------------------------------------------------------- 'Esta función devuelve el meridiano de Greenwich obtenido de un servidor de Internet. 'Puede usar el argumento opcional GMTDifference para sumar (o restar) 'una hora desde la hora GMT. Por ejemplo, si llama a la función como: '=InternetTime(2) devolverá la hora (local) GMT + 2. Tenga en cuenta que el 'La variable GMTDifference es un número entero. 'Written by: Christos Samaras 'Date: 25/09/2013 'Last Updated: 10/01/2017 'e-mail: xristos.samaras@gmail.com 'site: https://myengineeringworld.net///// '------------------------------------------------------------------------------- 'Declaring the necessary variables. Dim Request As Object Dim ServerURL As String Dim Results As String Dim NetDate As String Dim NetTime As Date Dim LocalDate As Date Dim LocalTime As Date 'Check if the time difference is within the accepted range. If GMTDifference < -12 Or GMTDifference > 14 Then Exit Function End If 'The server address. 'ServerURL = "http://www.timeanddate.com/worldclock/fullscreen.html?n=2" 'ServerURL = "https://clients.cloudclusters.io/" ServerURL = url 'Build the XMLHTTP object and check if was created successfully. On Error Resume Next Set Request = CreateObject("MSXML2.ServerXMLHTTP.6.0") If Err.Number <> 0 Then Exit Function End If On Error GoTo 0 'Create the request. Request. Open "GET", ServerURL, False, "", "" 'Send the request to the internet server. Request. Send 'Based on the status node result, proceed accordingly. If Request.ReadyState = 4 Then 'If the request succeed, the following line will return 'something like this: Mon, 30 Sep 2013 18:33:23 GMT. Results = Request.getResponseHeader("date") 'Use the Mid function to get something like: 30 Sep 2013 18:33:23. Results = Mid(Results, 6, Len(Results) - 9) 'Use the Left and Right function to distinguish the date and time. NetDate = Left(Results, Len(Results) - 9) '30 Sep 2013 NetTime = Right(Results, 8) '18:33:23 'Convert the date into a valid Excel date 30 Sep 2013 -> 30/9/2013. 'Required for countries that have some non-Latin characters at their alphabet (Greece, Russia, Serbia etc.). LocalDate = ConvertDate(NetDate) 'Add the hour difference to the retrieved GMT time. LocalTime = NetTime + GMTDifference / 24 'Return the local date and time. InternetTime = LocalDate + LocalTime End If 'Release the XMLHTTP object. Set Request = Nothing End Function
Solo adicione el paso de la url como parámetro. Martha así a otros no les guste sus preguntas trato de dar respuesta, lo importante es que el código puede servir a otros usuarios. No es enviar la respuesta a su correo como dice otro, sino que sea visible a todos.
- Compartir respuesta


Me sorprende infinito que cuelgues una pregunta con la cantidad de veces que tu "adorado" maestro te ha ofrecido su correo.
- Compartir respuesta
Que falta de respeto con los usuarios, su "burrada" no es una respuesta. Todo indica que sus conocimientos en Access y redes es nada, si no sabe haga caso omiso, no es obligatorio responder y deje que otros respondan y foro es para todos. - Eduardo Pérez Fernández
Ignorante Julián las preguntas se hacen para otros usuarios también aprendan, usted se puede beneficiar. Como le dije al otro inexperto sino saben hágase a una lado no es obligatorio responder burradas. - Eduardo Pérez Fernández


Supongo Julián que has apreciado que cuando el mencionado recibe un 'tirón de orejas' un poco mas tarde (asumo que el tiempo de preparar la respuesta) aparece un mensaje de uno de sus satélites con una pregunta que solo seria adecuada en otro foro (foro que también hay aquí y en el cual no participa ¿por qué será?).
Eso si, aprovecha el corto viaje para sobrevalorar las respuestas de su gurú para que no le caiga la puntuación y se deprima.
Es muy intrigante ese entorno en el que los datos van 'al alimón' en Access y en PGSql y ello requiere ambas formas de trabajo (curiosa mezcla de pescado y carne en el mismo plato).
Inestimable Martha: seria de agradecer que planteases las preguntas en el foro correcto, un poco de respeto para el resto de participantes a los que PGSql les es indiferente (y si utilizan otros entornos de datos preguntan en 'sus' respectivos foros).
(Innegablemente este mensaje recibirá por lo menos un voto negativo, pero como los puntos me importan lo mismo que las comas ...)

Enrique pensé que ustedes eran expertos, pero no, son todo lo contrario, se nota que les duele que el experto Eduardo los supere totalmente. Espero que Eduardo me dé la respuesta. Le exijo respeto cómo es eso que me trata de Inestimable, sería conveniente el administrador de este foro tomara medidas con las analfabetas e irrespetuosos.
Y seguro que seguiré preguntando, toda vez, que estoy aprendiendo PostgreSQL para sacar el mejor provecho de Access, algo que para usted y Julián está lejos.

Creo sincera y honradamente (creo que el segundo termino te es completamente desconocido) que si no eres capaz de lograr obtener ese resultado (tomando como referencia el post que aludes) deberías de buscar otra cosa en la que dilapidar tu esfuerzo.
Y si eres inteligente y es cierto que es parte de tu trabajo, procura que nadie te reconozca y asocie donde trabajas lea tus intervenciones, no sea que formes parte de los que están en paro en la que habrá mas de uno con cualidades superiores a las tuyas en cualquier ámbito (sobre todo en la capacidad de abstracción indispensable para programar en cualquier lenguaje).

La sabiduría no se obtiene publicando auto-propaganda, si se aplica el método que Uds utilizan (espero que no sea una de las lecciones básicas de ese lenguaje minoritario), basta crear clónicos y cuentas de correo-e para multiplicar 'hasta el infinito y mas allá' el numero de votos positivos aunque solo se responda con un carácter.
Si, también me agradaría que en el foro hubiera un mayor control para evitar situaciones como esta en la que se delata la paja en el ojo ajeno y se niega la viga en el propio.
Aprenda PGSql si le apetece pero en el lugar adecuado y ¡ Por favor! Demuestre que si le dan una respuesta (buena, regular o mala) aprende por lo menos a diferenciarlas.
Si realmente hubiera una causa que justificase el control de las fechas: 'un poco de queso' y el ratón a la calle, pues quien o quienes hacen trampa no son fiables (y no suelen cambiar sus métodos, sobre todo si los aprenden de sus maestros).
- Compartir respuesta
Mire ignorante se nota que no sabe que es PgSql y este foro si encaja la pregunta de Martha. Le recomiendo hágase a un lado si no sabe el tema no es obligatorio respinder burradas - Eduardo Pérez Fernández
Qué lástima usted va y no sabe para qué parte. Aprenda a tratar las personas, más si es una mujer - Eduardo Pérez Fernández
