Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

interception messages des requetes web

5 réponses
Avatar
eric
bonjour
je souhaiterais intercepter ou supprimer les messages d'erreurs provenant
des requetes web dans excel
requetes web de : "données"/"donnees externes"/"nouvelle requete sur le web"

(ou que l on peut aussi créer via une QueryTable en VBA)

les messages sont du type :
- requete sur le web non valide
- impossible d'ouvrir le lien ........

merci

5 réponses

Avatar
PMO
Bonjour,

J'ai enregistré une macro selon vos directives "données"/"donnees
externes"/"nouvelle requete sur le web"
pour obtenir Google.
J'y ai remplacé l'URL
URL;http://www.google.fr/webhp?
par
URL;http://www.googleZAZA.fr/webhp?
pour fabriquer une erreur de connexion.

J'ai ajouté dans le code plusieurs lignes de traitement d'erreur ainsi que
des lignes de pseudo traitement.
Ces dernières pour illustrer, à l'essai, les différentes étapes du
traitement d'erreur.
LES LIGNES AVEC EN FINAL '### sont les lignes importantes à conserver.

Voici le code pour test
'*****************
Option Explicit
Sub Macro1()
On Error GoTo TraiteErreur '###
With ActiveSheet.QueryTables.Add(Connection:= _
"URL;http://www.googleZAZA.fr/webhp?" & _
"sourceid=navclient&hl=fr&ie=UTF-8", _
Destination:=Range("A1"))
.Name = "webhp?sourceid=navclient&hl=fr&ie=UTF-8"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.WebSelectionType = xlEntirePage
.WebFormatting = xlWebFormattingNone
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = False
.WebDisableRedirections = False
.Refresh BackgroundQuery:úlse 'C'est ici que ça plante
End With

'---- Pseudo traitement (à jeter par la suite) ----
MsgBox "Je fais une division par 0"
Dim i&
i& = i& / 0
MsgBox "Le ''Resume Next'' me renvoit juste avant le Exit Sub"
'----------------------------
Exit Sub '###
TraiteErreur: '###
Dim reponse% '###
reponse% = MsgBox _
(prompt:=Err.Number & vbCrLf & _
vbCrLf & Err.Description & vbCrLf & _
vbCrLf & "Voulez-vous continuer ?", _
Buttons:=vbOKCancel) '###
If reponse% = vbOK Then Resume Next 'sinon on termine '###
End Sub
'*****************

Cordialement.

--
PMO
Patrick Morange



bonjour
je souhaiterais intercepter ou supprimer les messages d'erreurs provenant
des requetes web dans excel
requetes web de : "données"/"donnees externes"/"nouvelle requete sur le web"

(ou que l on peut aussi créer via une QueryTable en VBA)

les messages sont du type :
- requete sur le web non valide
- impossible d'ouvrir le lien ........

merci


Avatar
PMO
Bonjour,

J'ai enregistré une macro selon vos directives "données"/"donnees
externes"/"nouvelle requete sur le web"
pour obtenir Google.
J'y ai remplacé l'URL
URL;http://www.google.fr/webhp?
par
URL;http://www.googleZAZA.fr/webhp?
pour fabriquer une erreur de connexion.

J'ai ajouté dans le code plusieurs lignes de traitement d'erreur ainsi que
des lignes de pseudo traitement.
Ces dernières pour illustrer, à l'essai, les différentes étapes du
traitement d'erreur.
LES LIGNES AVEC EN FINAL '### sont les lignes importantes à conserver.

Voici le code pour test
'*****************
Option Explicit
Sub Macro1()
On Error GoTo TraiteErreur '###
With ActiveSheet.QueryTables.Add(Connection:= _
"URL;http://www.googleZAZA.fr/webhp?" & _
"sourceid=navclient&hl=fr&ie=UTF-8", _
Destination:=Range("A1"))
.Name = "webhp?sourceid=navclient&hl=fr&ie=UTF-8"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.WebSelectionType = xlEntirePage
.WebFormatting = xlWebFormattingNone
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = False
.WebDisableRedirections = False
.Refresh BackgroundQuery:úlse 'C'est ici que ça plante
End With

'---- Pseudo traitement (à jeter par la suite) ----
MsgBox "Je fais une division par 0"
Dim i&
i& = i& / 0
MsgBox "Le ''Resume Next'' me renvoit juste avant le Exit Sub"
'----------------------------
Exit Sub '###
TraiteErreur: '###
Dim reponse% '###
reponse% = MsgBox _
(prompt:=Err.Number & vbCrLf & _
vbCrLf & Err.Description & vbCrLf & _
vbCrLf & "Voulez-vous continuer ?", _
Buttons:=vbOKCancel) '###
If reponse% = vbOK Then Resume Next 'sinon on termine '###
End Sub
'*****************

Cordialement.

--
PMO
Patrick Morange



bonjour
je souhaiterais intercepter ou supprimer les messages d'erreurs provenant
des requetes web dans excel
requetes web de : "données"/"donnees externes"/"nouvelle requete sur le web"

(ou que l on peut aussi créer via une QueryTable en VBA)

les messages sont du type :
- requete sur le web non valide
- impossible d'ouvrir le lien ........

merci


Avatar
eric
Merci beaucoup d'avoir pris le temps d'étudier mon problème et de proposer
une solution

Dans ce cas là ca fonctionne effectivement bien

Par contre, normalement la requete n'est pas réactualisée par VBA, mais elle
se réactualise toute seule toute les X secondes et dans ce cas je ne sais pas
quel type de macro utiliser

J'ai testé avec Worksheet_Change(ByVal target As Range) mais visiblement
l'erreur arrive avant cette phase






Bonjour,

J'ai enregistré une macro selon vos directives "données"/"donnees
externes"/"nouvelle requete sur le web"
pour obtenir Google.
J'y ai remplacé l'URL
URL;http://www.google.fr/webhp?
par
URL;http://www.googleZAZA.fr/webhp?
pour fabriquer une erreur de connexion.

J'ai ajouté dans le code plusieurs lignes de traitement d'erreur ainsi que
des lignes de pseudo traitement.
Ces dernières pour illustrer, à l'essai, les différentes étapes du
traitement d'erreur.
LES LIGNES AVEC EN FINAL '### sont les lignes importantes à conserver.

Voici le code pour test
'*****************
Option Explicit
Sub Macro1()
On Error GoTo TraiteErreur '###
With ActiveSheet.QueryTables.Add(Connection:= _
"URL;http://www.googleZAZA.fr/webhp?" & _
"sourceid=navclient&hl=fr&ie=UTF-8", _
Destination:=Range("A1"))
.Name = "webhp?sourceid=navclient&hl=fr&ie=UTF-8"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.WebSelectionType = xlEntirePage
.WebFormatting = xlWebFormattingNone
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = False
.WebDisableRedirections = False
.Refresh BackgroundQuery:úlse 'C'est ici que ça plante
End With

'---- Pseudo traitement (à jeter par la suite) ----
MsgBox "Je fais une division par 0"
Dim i&
i& = i& / 0
MsgBox "Le ''Resume Next'' me renvoit juste avant le Exit Sub"
'----------------------------
Exit Sub '###
TraiteErreur: '###
Dim reponse% '###
reponse% = MsgBox _
(prompt:=Err.Number & vbCrLf & _
vbCrLf & Err.Description & vbCrLf & _
vbCrLf & "Voulez-vous continuer ?", _
Buttons:=vbOKCancel) '###
If reponse% = vbOK Then Resume Next 'sinon on termine '###
End Sub
'*****************

Cordialement.

--
PMO
Patrick Morange



bonjour
je souhaiterais intercepter ou supprimer les messages d'erreurs provenant
des requetes web dans excel
requetes web de : "données"/"donnees externes"/"nouvelle requete sur le web"

(ou que l on peut aussi créer via une QueryTable en VBA)

les messages sont du type :
- requete sur le web non valide
- impossible d'ouvrir le lien ........

merci




Avatar
eric
j ai essaye avec l evenement QueryTable_AfterRefresh
mais il a pas l'air de declencher non plus


Bonjour,

J'ai enregistré une macro selon vos directives "données"/"donnees
externes"/"nouvelle requete sur le web"
pour obtenir Google.
J'y ai remplacé l'URL
URL;http://www.google.fr/webhp?
par
URL;http://www.googleZAZA.fr/webhp?
pour fabriquer une erreur de connexion.

J'ai ajouté dans le code plusieurs lignes de traitement d'erreur ainsi que
des lignes de pseudo traitement.
Ces dernières pour illustrer, à l'essai, les différentes étapes du
traitement d'erreur.
LES LIGNES AVEC EN FINAL '### sont les lignes importantes à conserver.

Voici le code pour test
'*****************
Option Explicit
Sub Macro1()
On Error GoTo TraiteErreur '###
With ActiveSheet.QueryTables.Add(Connection:= _
"URL;http://www.googleZAZA.fr/webhp?" & _
"sourceid=navclient&hl=fr&ie=UTF-8", _
Destination:=Range("A1"))
.Name = "webhp?sourceid=navclient&hl=fr&ie=UTF-8"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.WebSelectionType = xlEntirePage
.WebFormatting = xlWebFormattingNone
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = False
.WebDisableRedirections = False
.Refresh BackgroundQuery:úlse 'C'est ici que ça plante
End With

'---- Pseudo traitement (à jeter par la suite) ----
MsgBox "Je fais une division par 0"
Dim i&
i& = i& / 0
MsgBox "Le ''Resume Next'' me renvoit juste avant le Exit Sub"
'----------------------------
Exit Sub '###
TraiteErreur: '###
Dim reponse% '###
reponse% = MsgBox _
(prompt:=Err.Number & vbCrLf & _
vbCrLf & Err.Description & vbCrLf & _
vbCrLf & "Voulez-vous continuer ?", _
Buttons:=vbOKCancel) '###
If reponse% = vbOK Then Resume Next 'sinon on termine '###
End Sub
'*****************

Cordialement.

--
PMO
Patrick Morange



bonjour
je souhaiterais intercepter ou supprimer les messages d'erreurs provenant
des requetes web dans excel
requetes web de : "données"/"donnees externes"/"nouvelle requete sur le web"

(ou que l on peut aussi créer via une QueryTable en VBA)

les messages sont du type :
- requete sur le web non valide
- impossible d'ouvrir le lien ........

merci




Avatar
eric
j avance mais je suis toujours bloqué

j'avance car j'arrive a utiliser le querytable AfterRefresh
(en créant un module de classe, pas évident à faire, mais indiqué dans la doc)

mais mon problème reste le même car la procédure querytable AfterRefresh
detecte bien si le raraichissement c'est bien réalisé ou pas, mais avant la
detection, j'ai quant meme le message d'erreur




Bonjour,

J'ai enregistré une macro selon vos directives "données"/"donnees
externes"/"nouvelle requete sur le web"
pour obtenir Google.
J'y ai remplacé l'URL
URL;http://www.google.fr/webhp?
par
URL;http://www.googleZAZA.fr/webhp?
pour fabriquer une erreur de connexion.

J'ai ajouté dans le code plusieurs lignes de traitement d'erreur ainsi que
des lignes de pseudo traitement.
Ces dernières pour illustrer, à l'essai, les différentes étapes du
traitement d'erreur.
LES LIGNES AVEC EN FINAL '### sont les lignes importantes à conserver.

Voici le code pour test
'*****************
Option Explicit
Sub Macro1()
On Error GoTo TraiteErreur '###
With ActiveSheet.QueryTables.Add(Connection:= _
"URL;http://www.googleZAZA.fr/webhp?" & _
"sourceid=navclient&hl=fr&ie=UTF-8", _
Destination:=Range("A1"))
.Name = "webhp?sourceid=navclient&hl=fr&ie=UTF-8"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.WebSelectionType = xlEntirePage
.WebFormatting = xlWebFormattingNone
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = False
.WebDisableDateRecognition = False
.WebDisableRedirections = False
.Refresh BackgroundQuery:úlse 'C'est ici que ça plante
End With

'---- Pseudo traitement (à jeter par la suite) ----
MsgBox "Je fais une division par 0"
Dim i&
i& = i& / 0
MsgBox "Le ''Resume Next'' me renvoit juste avant le Exit Sub"
'----------------------------
Exit Sub '###
TraiteErreur: '###
Dim reponse% '###
reponse% = MsgBox _
(prompt:=Err.Number & vbCrLf & _
vbCrLf & Err.Description & vbCrLf & _
vbCrLf & "Voulez-vous continuer ?", _
Buttons:=vbOKCancel) '###
If reponse% = vbOK Then Resume Next 'sinon on termine '###
End Sub
'*****************

Cordialement.

--
PMO
Patrick Morange



bonjour
je souhaiterais intercepter ou supprimer les messages d'erreurs provenant
des requetes web dans excel
requetes web de : "données"/"donnees externes"/"nouvelle requete sur le web"

(ou que l on peut aussi créer via une QueryTable en VBA)

les messages sont du type :
- requete sur le web non valide
- impossible d'ouvrir le lien ........

merci