7.8k Aufrufe
Gefragt in Tabellenkalkulation von a-raphael Einsteiger_in (43 Punkte)
Hallo zusammen,
ich habe noch ein bitte von euch. ich habe schon geschafft, eine Übersetzung in Excel
gemacht und hat super funktioniert.

---- jetzt wollte gern eine externe Excel Tabelle , die in russisch ist übersetzen. die frage
ist wie sollte ich anfangen???
ich habe gedacht ,zuerst sollte die Tabelle exportieren, dann in meine Übersetzung
Code einlegen ?? wie kann das funktionieren??
ich setze schon seit 2 Tage durch ohne Lösung?

ich warte schon auf Ihre Hilfe , danke im Voraus

bis dann

8 Antworten

0 Punkte
Beantwortet von ericmarch Experte (4.6k Punkte)
Was hast du da zu übersetzen? Formelbefehle von einer Landessprache in die andere - also Paare wie Oder/Or, Und/And, Wenn/If?
Eric March
0 Punkte
Beantwortet von a-raphael Einsteiger_in (43 Punkte)
Hallo Eric March,

eigentlich habe eine Tabelle excel für Schulbedarf in Russich von einem Freund gekriegt und wollte ich diese ganze Tabelle Excel übersetzen in Deutsch.
wie könnte ich das lösen? klar mit einen Makro.
aber was wäre hier das VBA programm?

danke nochmal für deine schnelle Rückmeldung. und für weitere Frage stehe immer zur Verfügung

ich freue mich schon für die Rückmeldung

bis dann
0 Punkte
Beantwortet von ericmarch Experte (4.6k Punkte)
Meine Frage ist noch offen. Was ist es was zu übersetzen ist, Zellwerte oder Dinge im ›Hintergrund‹?

Eine irre Spielerei, wenn es um Werte ginge, würde so aussehen: Zelle für Zelle abluafen. IE (oder anderen Browser) mit dem Google Translator über eine komplette Befehlszeile aufrufen.
Nun kommt das Loch im Plan: Das alles markieren und in die Zwischenablage und die in eine Dummy-Blatt einkelben. Die Googe-Page aht eine Struktur die ein Makro auswerten kann die Übersetzung zu finden. Das kann dann in die übersetzte Tabelle geklebt werden. Dummyblatt leeren, Browser zu, nächste Zelle.

Eric March
0 Punkte
Beantwortet von a-raphael Einsteiger_in (43 Punkte)
Hallo Eric March,
cool deine Idee , aber kannst du mir das bitte per Code VBA schreiben . ich finde, das wäre die Lösung, aber wie sollten wir das einsetzen.
es wäre super ein parr Programm beispiel.
danke.
0 Punkte
Beantwortet von ericmarch Experte (4.6k Punkte)
Ich scheitere (wie befürchtet) an der zentralen Stelle: den IE aufzurufen, mitsamt der Google-Übersetz-Syntax - das geht. Aber an die Rückgabe komme ich nicht ran außer der User muss Zelle für Zelle die Übersetzung markieren und kopieren. Dann könnte Excel weiterlaufen usw. usf.

Ich habe mal etwas Ähnliches programmiert: Excel liefert einen String in die Zwischenablage, den klebe ich (belegte Maustasten & Sondertasten) in die Adresszeile und dann konnte ich die abgerufene Seite mit einer ganzen Latte an Rückgaben komplett kopieren und die Rückgabe auswerten. Das war zwar auch eine sch. Arbeit, aber es führte ohne zu große Quälerei zum Ziel.
Hier aber Zelle für Zelle - da kannst du auch gleich das in den Browser kopieren und die Übersetzung zurückholen. So lange mir nichts zündendes einfällt zumindest große Brocken zu übersetzen und zurückzuholen sollten wir mein Windei besser vergessen. Theorie 2, Praxis 5-Minus.

Eric March
0 Punkte
Beantwortet von a-raphael Einsteiger_in (43 Punkte)
danke Eric March für dein Große hilfe. bitte hast du ein Beispiel Code VBA ?
wollte gern mal bei mir probieren.
danke nochmal
0 Punkte
Beantwortet von ericmarch Experte (4.6k Punkte)
Naja, im Grunde ist es wirklich wenig Code - nur eben der mächtig große Haken die Übersetzung immer einzeln markieren & kopieren zu müssen.
Eine Übersetzer-Page die mittels Übergabe des zu übersetzenden Textes aufgerufen werden kann und die Übersetzung (per JavaScript oder so) in die Zwischenablage gibt wäre natürlich Zucker :)

Sub RohUebersetzung()
'Ich setze hier mal bequem voraus, dass die zu übersetzenden
' Zellen von Hand markiert sind.
'Kann man ein festes rechteckiges Raster angeben würde ich zu
' normalem For-To-Next greifen; evtl. mit Do-Loop vereint.

'Außerdem machen wir's mal primitv: wir überschreiben einfach
' die originalen Texte (Kopie der Datei verwenden z.B.)

'Voraussetzung:
' In der Zelle darf nur ein "Einzeiler" sthen, also irgendwas
' _ohne_ einen maunellen Umbruch mit Alt+Return!
' Die Zellformatierung des automatischen Umbruchs ist problemlos.

Dim Zelle As Range
Dim Dummy As Variant
Set Ablage = New DataObject
'Alle gewählten Zellen ablaufen
For Each Zelle In Selection
If Zelle.Value <> "" Then
'Zellinhalt in die Zwischenablage
Ablage.SetText Trim(Zelle.Value)
Ablage.PutInClipboard
'Aufruf der Übersetzer-Page.
' Gag der Übung: ein IE bleibt offen und auch die Tabs vermehren sich nicht.
Dummy = Shell(Environ("comspec") & " /c start " & Chr(34) & Chr(34) & " " & Chr(34) & "http://translate.google.com/#ru|de|" & Trim(Zelle.Value) & Chr(34))
Rem Handarbeit erforderlich…
Rem …Rückgabe per Hand kopieren & die Input-Box fortsetzen;
Rem einfach mit Alt+Tab oder anders zu Excel zurückwechseln.
Dummy = InputBox("Eintippen unnötig - nur Enter", "Übersetzung abholen", "")
Rem (InputBox weil eine MsgBox dauernd den Systemsounds auslösen würde.)
'Die Zwischenablage einkleben
Ablage.GetFromClipboard
Zelle.Value = Ablage.GetText(1)
End If
Next
End Sub


Eric March
0 Punkte
Beantwortet von
oder hier nach diesem Programm googeln:

--> Sysfilter für Excel

Konvertierungsprgramm für Excel:
Excel --> MS Word ---> Excel

In Word können die Texte übersetzt werden.
...