Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: text to speech

text to speech
14.08.2014 13:07:49
Berny

Hallo VBA – Profis,
ich möchte mir in einem Dialogfeld Text, je nach User in unterschiedlichen Sprachen vorlesen lassen.
Das heißt mit » .speak « alleine komme ich nicht weiter.
Des weiteren möchte ich auch sowohl die Lautstärke als auch die Geschwindigkeit ändern können.
So und nun kommen meine Probleme: Als erstes habe ich von "tts" noch keine Ahnung (0,00).
In der Systemsteuerung unter "tts" habe ich nur Microsoft Anna zur Auswahl.
Was muss ich tuen damit ich auch andere Sprachen auswählen kann?
Muss ich die anderen Sprachen bei jedem USER installieren oder kann ich diese Sprachen auch zentral auf einem Netzlaufwerk haben und dort via VBA abrufen?
Wie kann ich die Sprache; die Lautstärke und die Geschwindigkeit via VBA ändern?
Hat jemand eine Bsp. – Mappe?? (Wäre wirklich sehr hilfreich, da ich wie schon gesagt noch bei 0 stehe)
M.f.G.
Berny

Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Infobox / Tutorial

Text to Speech in Excel: So gelingt's!


Schritt-für-Schritt-Anleitung

  1. VBA-Editor öffnen: Drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Neues Modul erstellen: Klicke im Projektfenster mit der rechten Maustaste auf dein Projekt, wähle Einfügen und dann Modul.

  3. VBA-Code eingeben: Füge den folgenden Code ein, um die Sprachausgabe zu aktivieren:

    Sub TextToSpeech()
        Dim speech As Object
        Set speech = CreateObject("SAPI.SpVoice")
        speech.Speak "Hallo, ich lasse diesen Text vorlesen."
    End Sub
  4. Makro ausführen: Schließe den VBA-Editor und führe das Makro über Entwicklertools > Makros aus.

  5. Weitere Anpassungen: Um die Lautstärke und Geschwindigkeit zu ändern, kannst du die Eigenschaften Rate und Volume des SAPI.SpVoice-Objekts anpassen:

    speech.Rate = 1 ' Werte zwischen -10 und 10
    speech.Volume = 100 ' Werte zwischen 0 und 100

Häufige Fehler und Lösungen

  • Fehler: Sprachausgabe funktioniert nicht

    • Lösung: Stelle sicher, dass die Sprachausgabe in der Systemsteuerung aktiviert ist und die richtigen Stimmen installiert sind.
  • Fehler: Nur Microsoft Anna verfügbar

    • Lösung: Du musst zusätzliche Stimmen für Text-to-Speech installieren. Diese können in der Systemsteuerung unter "Sprache" hinzugefügt werden.

Alternative Methoden

Falls du eine einfachere Lösung ohne VBA bevorzugst, kannst du auch die Excel Sprachausgabe nutzen:

  1. Markiere den gewünschten Text in einer Zelle.
  2. Gehe zu Überprüfen > Sprachausgabe.
  3. Wähle die gewünschte Sprache und klicke auf Vorlesen.

Für eine mehrsprachige Sprachausgabe kannst du auch externe Tools wie Balabolka oder RealSpeak verwenden.


Praktische Beispiele

  • Beispiel 1: Um eine Zelle mit einer bestimmten Sprache vorlesen zu lassen, kannst du den folgenden VBA-Code verwenden:

    Sub ReadCell()
        Dim speech As Object
        Set speech = CreateObject("SAPI.SpVoice")
        speech.Voice = speech.GetVoices("Name=Microsoft Zira Desktop").Item(0) ' Ändere den Namen zur gewünschten Stimme
        speech.Speak Range("A1").Value
    End Sub
  • Beispiel 2: Um alle Zellen in einem bestimmten Bereich vorlesen zu lassen:

    Sub ReadRange()
        Dim speech As Object
        Set speech = CreateObject("SAPI.SpVoice")
        Dim cell As Range
    
        For Each cell In Range("A1:A10")
            speech.Speak cell.Value
        Next cell
    End Sub

Tipps für Profis

  • Experimentiere mit der Rate-Eigenschaft, um den Sprechtempo optimal anzupassen.
  • Nutze die Excel Sprachausgabe Tastenkombination (z.B. ALT + H + C + V), um schnell zwischen den Funktionen zu wechseln.
  • Wenn du mehrsprachige Sprachausgabe benötigst, schau dir die Möglichkeiten von German Hans Text to Speech an.

FAQ: Häufige Fragen

1. Wie kann ich die Sprache in VBA ändern?
Du kannst die Sprache mit speech.Voice ändern, indem du eine installierte Stimme auswählst. Nutze speech.GetVoices um die verfügbaren Stimmen abzufragen.

2. Wo finde ich weitere Stimmen für Text-to-Speech?
Zusätzliche Stimmen können über die Windows-Einstellungen unter Zeit und Sprache > Sprache installiert werden. Achte darauf, dass die gewünschten Sprachen auch für die Sprachausgabe verfügbar sind.

3. Gibt es eine Tastenkombination für die Excel Sprachausgabe?
Ja, du kannst die Tastenkombination ALT + H + C + V verwenden, um die Vorlesefunktion schnell zu aktivieren.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige