Bonjour le forum,
Dans une macro, j'utilise la fonction traduction ci-dessous :
Je l'ai testée hier et ça fonctionnait puis après l'avoir relancée une seconde fois, elle ne marchait plus. Ce matin, je rallume mon ordi et ça refonctionne puis la seconde, troisième, quatrième... fois elle ne marche plus. Voici le message d'erreur que je rencontre :
La ligne que j'ai mise en gras dans le code est celle surlignée par le débogueur.
N'ayant j'avais utilisé CreateObject je ne vois pas du tout quel est le problème, si vous avez des idées
Merci !
Dans une macro, j'utilise la fonction traduction ci-dessous :
VB:
Public Function Translate(Optional texte As String, Optional From As String, Optional ToLang As String, Optional urlI As String)
Dim RQ As Object, URL As String, code As String, elem As Object, x As Long
Set RQ = CreateObject("microsoft.xmlhttp") '"MSXML2.ServerXMLHTTP"
If urlI <> "" Then
URL = urlI
Else
URL = "https://translate.google.pl/m?&sl=" & From & "&tl=" & ToLang & "&ie=UTF-8&prev=_m&q=" & texte
End If
RQ.Open "POST", URL, False
RQ.SetRequestHeader "User-Agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)"
[B] RQ.send[/B]
With CreateObject("htmlfile")
.body.innerhtml = RQ.responsetext
Debug.Print Replace(RQ.responsetext, "<>", ">" & vbCrLf & "<")
For Each elem In .ALL
If elem.Tagname = "DIV" And elem.classname = "t0" Then Translate = elem.innerhtml: Exit For
Next
End With
End Function
Je l'ai testée hier et ça fonctionnait puis après l'avoir relancée une seconde fois, elle ne marchait plus. Ce matin, je rallume mon ordi et ça refonctionne puis la seconde, troisième, quatrième... fois elle ne marche plus. Voici le message d'erreur que je rencontre :
La ligne que j'ai mise en gras dans le code est celle surlignée par le débogueur.
N'ayant j'avais utilisé CreateObject je ne vois pas du tout quel est le problème, si vous avez des idées
Merci !