VBA Excel: Begriffe automatisch übersetzen FR / EN
Schritt-für-Schritt-Anleitung
Um eine Liste von Begriffen aus dem Französischen ins Englische automatisch zu übersetzen, kannst du ein VBA-Makro verwenden. Hier ist eine Schritt-für-Schritt-Anleitung:
-
Öffne Excel und lade die Datei, die die zu übersetzenden Begriffe enthält. Die französischen Begriffe sollten in Spalte D stehen.
-
Öffne den VBA-Editor:
- Drücke
ALT + F11
um den Visual Basic for Applications (VBA) Editor zu öffnen.
-
Füge ein neues Modul hinzu:
- Klicke auf
Einfügen
> Modul
.
-
Kopiere den folgenden VBA-Code in das Modul:
Sub Uebersetzung_google()
On Error Resume Next
Dim IEApp As Object
Dim IEDocument As Object
Dim strErgebnis As String
Set IEApp = CreateObject("InternetExplorer.Application")
For i = 2 To Sheets(1).UsedRange.Rows.Count
erneut:
IEApp.Visible = False
IEApp.Navigate "http://translate.google.de/?hl=de&tab=wT#fr|en|" & Sheets(1).Cells(i, 4)
Application.StatusBar = "Übersetze-> " & Sheets(1).Cells(i, 4).Value
Do: Loop Until IEApp.Busy = False
Do: Loop Until IEApp.Busy = False
Set IEDocument = IEApp.Document
Do: Loop Until IEDocument.ReadyState = "complete"
strErgebnis = IEDocument.getElementById("result_box").innerText
Set IEDocument = Nothing
If strErgebnis = "" Then GoTo erneut
Sheets(1).Cells(i, 5) = strErgebnis
IEApp.Navigate "http://translate.google.de"
strErgebnis = ""
Next
IEApp.Quit
Set IEApp = Nothing
Application.StatusBar = False
MsgBox "Fertig"
End Sub
-
Führe das Makro aus:
- Drücke
F5
oder klicke auf Run
, um das Makro auszuführen. Es wird die Übersetzung der Begriffe in Spalte E einfügen.
Häufige Fehler und Lösungen
-
Problem: Das Makro reagiert nicht oder bleibt hängen.
- Lösung: Stelle sicher, dass die Internetverbindung stabil ist. Das Makro benötigt eine funktionierende Verbindung zu Google Translate.
-
Problem: Der Internet Explorer öffnet sich nicht.
- Lösung: Überprüfe, ob der Internet Explorer ordnungsgemäß installiert ist. Das Makro verwendet IE zur Durchführung der Übersetzungen.
-
Problem: googletranslate funktioniert nicht
.
- Lösung: Stelle sicher, dass die URL im Code korrekt ist und dass Google Translate nicht blockiert ist.
Alternative Methoden
Es gibt auch alternative Methoden, um einen Excel sheet zu übersetzen:
-
Formelbasierte Übersetzung:
- Du kannst die Google Translate API verwenden, um den Übersetzungsprozess in Excel zu automatisieren, ohne VBA zu verwenden.
-
Excel-Add-Ins:
- Es gibt verschiedene Add-Ins, die die Funktionalität zur Übersetzung direkt in Excel integrieren.
-
Manuelle Übersetzung:
- Für kleinere Listen kannst du die Begriffe manuell auf der Google Translate Webseite eingeben.
Praktische Beispiele
Hier ist ein Beispiel für die Anwendung des VBA-Codes:
- Begriff in D2: "Bonjour"
- Erwartete Übersetzung in E2: "Hello"
Du kannst den Code anpassen, um eine ganze Spalte zu übersetzen, indem du die Schleife anpasst, um die gewünschte Spalte zu durchlaufen.
Tipps für Profis
-
Schnelligkeit optimieren: Deaktiviere das Screen Updating und die automatische Berechnung am Anfang des Makros, um die Ausführungsgeschwindigkeit zu erhöhen. Verwende:
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
-
Ergebnisse überprüfen: Füge eine Validierung hinzu, um sicherzustellen, dass die Übersetzungen korrekt sind.
-
Fehlerbehandlung: Implementiere eine bessere Fehlerbehandlung, um unerwartete Probleme abzufangen.
FAQ: Häufige Fragen
1. Muss der Internet Explorer offen sein, bevor ich das Makro starte?
Nein, der Internet Explorer wird im Hintergrund geöffnet, wenn das Makro ausgeführt wird.
2. Wie kann ich die Übersetzung in eine bestimmte Zelle einfügen?
Ändere die Zielzelle im Code, indem du Sheets(1).Cells(i, 5)
anpasst, um die gewünschte Zelle auszuwählen.
3. Woher weiß ich, ob der Code erfolgreich war?
Eine Meldung wird am Ende des Makros angezeigt, wenn der Übersetzungsprozess abgeschlossen ist.