XL 2016 Traduire le contenu d'une cellule (Fr - En)

SebCam

XLDnaute Nouveau
Bonsoir à tous. Nouveau ici et débutant en VBA. Je cherche un moyen pour traduire une chaîne de caractères d'une cellule "B3" (Le chat mange) ouvrir google traduction pour effectuer la traduction, et récupérer la traduction dans la cellule voisine "D3". Merci de votre aide.
 

soan

XLDnaute Barbatruc
Inactif
=>SebCam : à propos de ton post #13, NOM? vient peut-être
de la fonction .msi qui a été évoquée dans la conversation
du lien que tu as suivi ?




essaye le lien de mon post #12, en particulier les 3 derniers
posts
; dont celui de Jean-Eric, qui contient ce fichier Excel .xlsm :


transalte-google-vba.xlsm (27.00 Ko)

voici le lien du post de Jean-Eric, du 8 juillet 2018 à 11:10.

nota bene : j'ai pu vérifier que le fichier joint est bien disponible. :)


soan
 
Dernière édition:

Staple1600

XLDnaute Barbatruc
Re

=>SebCam
Moi qui suis sur Excel 2013, je viens de voir que j'avais accès à cette fonctionnalité ;)
Merci donc pour ton post ;)
Si je l'ai sur Excel 2013, tu dois l'avoir sur Excel 2016, non ?
a1fe55f2-bc65-4fd0-9a2f-62f1d09d61b9.png
 

SebCam

XLDnaute Nouveau
Re, 2016 Pro, cette traduction est bien pour Outlook. Si vous voulez, j'ai un fichier Excel où je dois saisir une fiche signalétique de pièces de rechange, pour la gestion de stock. Description article, Code SAP, Qté mini et maxi, Fournisseur, Référence fournisseur.
Le comble, les codifications doivent être renseignées en anglais en plus, pour la société qui nous ont racheté.
 
Dernière édition:

SebCam

XLDnaute Nouveau
J'ai trouvé ceci :

Sub GoogTranslate()

' Microsoft HTML Object et Microsoft Internet Control de cochés

Dim IE As Object, Trans As String, snarT As String
Dim I As Long, LastA As Long, checkBack As Boolean

Trans = Range("G1").Value
checkBack = True '<<< traduction inverse True /False
'
snarT = "#" & Mid(Trans, 5, 3) & Mid(Trans, 2, 3)
Set IE = CreateObject("InternetExplorer.Application")
LastA = Cells(Rows.Count, 1).End(xlUp).Row
For I = 2 To LastA
If Cells(I, 1) <> "" Then
With IE
.Visible = True
.Navigate "https://translate.google.fr/" & Trans & Cells(I, 1).Value
Application.Wait (Now + TimeValue("0:00:01"))
Do While .Busy: DoEvents: Loop
Do While .readyState <> 4: DoEvents: Loop

.Cells(I, 2).Value = .Document.all("result_box").innerHTML ' Copie le contenu de la boîte

If checkBack Then
.Navigate "https://translate.google.fr/" & snarT & Cells(I, 2).Value
Application.Wait (Now + TimeValue("0:00:01"))
Do While .Busy: DoEvents: Loop
Do While .readyState <> 4: DoEvents: Loop
Cells(I, 3).Value = .Document.all("result_box").innerText
End If
End With
End If
Next I
IE.Quit
Set IE = Nothing
End Sub

Mais cela bug ici : .Cells(I, 2).Value = .Document.all("result_box").innerHTML

J'ai regardé dans les préférence de la page VBA, tout me semble y être :
1611701620969.png
 

soan

XLDnaute Barbatruc
Inactif
@SebCam, Staple,

* selon l'énoncé, il faudrait une traduction de B3 en D3

* selon le post #21, il semble s'agir de la Description article
(pièces de rechange) ; mais références de cellules non indiquées !

* selon le code VBA du post #23 : de Cells(i, 1) en Cells(i, 3) ?

* selon le post #26 : traduction de A1 en B1

y'a le choix, quoi ! 😜


soan
 

SebCam

XLDnaute Nouveau
Re , pour le test, j'ai A1 à A9 le texte en français, que je cherche à rapatrier en colonne B la traduction. L'ouverture de la page web google traduction se fait, la phrase en français s'y met et est traduite. Il reste la copie qui ne se s'effectue pas vers la cellule destination.
 

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 321
Messages
2 087 265
Membres
103 501
dernier inscrit
talebafia