Anzeige
Archiv - Navigation
1676to1680
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
VBA Anbinden Google Übersetzer an Excel
19.02.2019 22:33:35
Robert
Hallo zusammen.
Ich bin neu hier und möchte gerne mein Problem auf diesem Weg schildern:
Es geht um die Anbindung des Google-Übersetzers in Excel via VBA. Im Grunde durchlaufe ich eine Schleife in Spalte A und möchte über eine Funktion die Übersetzung mit Google in Spalte B ausgeben. Das ganze geht soweit gut, bis zum Zeitpunkt der Datenübertragung von der Ergebnisbox Google nach Excel Spalte B. Hier bekomme ich nur einen leeren String. Ich verstehe nicht, wieso ich den übersetzten Inhalt nicht mit "Uebersetzung = objIE.Document.getElementById("result_box").innerText" kriegen kann!?
Weiß jemand hier weiter? Sperrt Google diese Anwendung intern?
Public Function Uebersetzung(strQuelle As String, strZiel As String, strText As String) As  _
String
Dim objIE As Object
Dim timeOut As Date
On Error Resume Next
Set objIE = CreateObject("InternetExplorer.Application")
objIE.navigate "http://translate.google.com/?#" & strQuelle & "/" & strZiel & "/" & Replace( _
strText, " ", "%20")
timeOut = Now + TimeValue("00:00:05")
Do
Uebersetzung = objIE.Document.getElementById("result_box").innerText
If Now >= timeOut Then Exit Do
Loop While Uebersetzung = ""
objIE.Quite
Set objIE = Nothing
On Error GoTo 0
End Function

Sub Translate()
Dim i As Integer, anzRows As Integer
Dim strQuelle As String, strZiel As String, strText As String, TranslateText As String
anzRows = ActiveWorkbook.ActiveSheet.Range("A1").CurrentRegion.Rows.Count
strZiel = "EN"
strQuelle = "DE"
For i = 1 To anzRows
strText = ActiveWorkbook.ActiveSheet.Range("A" & i).Value
ActiveWorkbook.ActiveSheet.Range("B" & i) = Uebersetzung(strQuelle, strZiel, strText)
Next
End Sub

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Anbinden Google Übersetzer an Excel
20.02.2019 07:03:42
MCO
Guten Morgen, Robert!
Mit

objIE.Visible = True
hab ich den Browser sichtbar gemacht, und leider keine Ergebnis im Google-Übersetzer erhalten.
Ich verwende deepl.com. Die Übersetzung ist deutlich besser.
Leider hab ich aber auch hier keine Lösung für den Abgriff der Daten gefunden. Ich denke, es liegt an der Struktur der Seite, das eben nicht alles nur html ist sondern noch mit JAVA-Script verknüft oder so. Kenn mich in web-seiten schreiben nicht aus...
Gruß, MCO
AW: VBA Anbinden Google Übersetzer an Excel
20.02.2019 17:11:04
Robert
Hallo MCO,
vielen Dank für deine Antwort.
Deepl.com hatte ich ursprünglich im Code. Hab auch selbiges festgestellt und dachte, dass man auf dieser Seite die Textbox für das Ergebnis anders wie bei Google ansprechen muss. Was mir nicht bekannt ist, wie. Aber da es auch bei Google nicht funktioniert, bin ich mir nicht sicher, liegt es immer noch am Code oder ist das Abholen der Information auf den Web-Seiten gesperrt?
Oh, mann...
Wen könnte ich noch fragen, um hier zum Ziel zu kommen?
Anzeige
AW: VBA Anbinden Google Übersetzer an Excel
20.02.2019 18:41:51
Sepp
Hallo Robert,
Modul Modul2
Option Explicit 
 
 
Sub testTranslate() 
  Debug.Print Uebersetzung("en", "de", "winter is coming") 
End Sub 
 
Public Function Uebersetzung(strQuelle As String, strZiel As String, strText As String) As String 
  Dim objIE As Object 
  Dim timeOut As Date 
   
  Const CLASSNAME As String = "lmt__textarea lmt__target_textarea lmt__textarea_base_style" 
   
  On Error Resume Next 
   
  Set objIE = CreateObject("InternetExplorer.Application") 
 
  objIE.navigate "https://www.deepl.com/translator#" & strQuelle & "/" & strZiel & "/" & Replace(strText, " ", "%20") 
  timeOut = Now + TimeValue("00:00:05") 
   
  Do 
    Uebersetzung = objIE.Document.getElementsByClassName(CLASSNAME)(0).innerText 
    If Now >= timeOut Then Exit Do 
  Loop While Uebersetzung = "" 
   
  objIE.Quit 
  Set objIE = Nothing 
   
  On Error GoTo 0 
   
End Function 

VBA/HTML-CodeConverter, AddIn für Office 2002-2016 - in VBA geschrieben von Lukas Mosimann. Projektbetreuung:RMH Software & Media

Code erstellt und getestet in Office 16 - mit VBAHTML 12.6.0


 ABCDEF
1Gruß Sepp
2
3

Anzeige
AW: VBA Anbinden Google Übersetzer an Excel
21.02.2019 12:24:30
Robert
Hallo Sepp,
herzlichen Dank für deine große Hilfe! :)
Das Ding funktioniert jetzt.
Viele Grüße,
Robert

17 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige